erkamyaman/ionic-capacitor-skills

ionic-cmp-consent

Wire Google's User Messaging Platform (UMP) consent dialog into a Capacitor app so AdMob can serve personalized ads in EU/UK/Switzerland without the account being throttled or flagged.

First seen Apr 26, 2026

Installation

$ npx skills add erkamyaman/ionic-capacitor-skills --skill ionic-cmp-consent

Summary

  • Wire Google's User Messaging Platform (UMP) consent dialog into a Capacitor app so AdMob can serve personalized ads in EU/UK/Switzerland without the account being throttled or flagged.
  • Trigger when adding GDPR consent, IAB TCF dialog, or "consent before AdMob" to an Ionic Capacitor app.

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from erkamyaman/ionic-capacitor-skills · top by installs.

npx skills add erkamyaman/ionic-capacitor-skills

Browse all from erkamyaman/ionic-capacitor-skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 14
License LICENSE
Default branch main
Open issues 0
Status Active

Skill metadata

Parsed from SKILL.md frontmatter.

Version1.0
LicenseMIT
More metadata
author
erkamyaman
version
1.0

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,178 B
  • docs SUMMARY.md 312 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 19 installs

SKILL.md

Google UMP Consent (GDPR / IAB TCF v2)

Without a CMP, Google AdMob serves only non-personalized ads to EU/UK/Switzerland traffic — and may eventually disable serving entirely for non-compliant apps. UMP is Google's free CMP and integrates directly with @capacitor-community/admob.

When to consult

  • Configure UMP in AdMob console: [setup.md](references/setup.md)
  • Show the consent form before initializing AdMob: [consent-flow.md](references/consent-flow.md)
  • Per-framework integration snippets: [framework-snippets.md](references/framework-snippets.md)

Hard rules

  • ✅ Run the consent flow before AdMob.initialize(). Skipping this means EU users get non-personalized ads at best, no ads at worst.
  • ✅ Show a "Privacy options" entry in Settings so users can change consent later — required by IAB TCF.
  • ❌ Do not show the form on every launch. Cache the consent status; only show when status is REQUIRED.

Pairs with ionic-att

If the app ships to iOS and serves AdMob personalized ads, you also need iOS App Tracking Transparency — see [../ionic-att/SKILL.md](../ionic-att/SKILL.md). The required full sequence is:

ATT.requestPermission()       (iOS only — do this first)
  ↓
gatherConsent() (UMP)         (this skill)
  ↓
AdMob.initialize()
  ↓
showBannerAd()                (only if not premium)

Both flows fire after onboarding completes, not on first launch — Apple rejects apps that prompt for ATT before the user has a chance to understand why.

Library

npm install @capacitor-community/admob
npx cap sync

@capacitor-community/admob ships UMP support in the same package — no separate install. See [admob.md](../ionic-shared/references/admob.md) for the base AdMob skill.