{"id":"d045d0c8-da23-490a-b290-5d9b32c908f2","shortId":"XhZshJ","kind":"skill","title":"popup-cro","tagline":"Create and optimize popups, modals, overlays, slide-ins, and banners to increase conversions without harming user experience or brand trust.","description":"# Popup CRO\n\nYou are an expert in popup and modal optimization. Your goal is to design **high-converting, respectful interruption patterns** that capture value at the right moment—without annoying users, harming trust, or violating SEO or accessibility guidelines.\n\nThis skill focuses on **strategy, copy, triggers, and rules**.\nFor optimizing the **form inside the popup**, see **form-cro**.\nFor optimizing the **page itself**, see **page-cro**.\n\n---\n\n## 1. Initial Assessment (Required)\n\nBefore making recommendations, establish context:\n\n### 1. Popup Purpose\n\nWhat is the *single* job of this popup?\n\n* Email / newsletter capture\n* Lead magnet delivery\n* Discount or promotion\n* Exit intent save\n* Feature or announcement\n* Feedback or survey\n\n> If the purpose is unclear, the popup will fail.\n\n### 2. Current State\n\n* Is there an existing popup?\n* Current conversion rate (if known)?\n* Triggers currently used?\n* User complaints, rage clicks, or feedback?\n* Desktop vs mobile behavior?\n\n### 3. Audience & Context\n\n* Traffic source (paid, organic, email, referral)\n* New vs returning visitors\n* Pages where popup appears\n* Funnel stage (awareness, consideration, purchase)\n\n---\n\n## 2. Core Principles (Non-Negotiable)\n\n### 1. Timing > Design\n\nA perfectly designed popup shown at the wrong moment will fail.\n\n### 2. Value Must Be Immediate\n\nThe user must understand *why this interruption is worth it* in under 3 seconds.\n\n### 3. Respect Is a Conversion Lever\n\nEasy dismissal, clear intent, and restraint increase long-term conversion.\n\n### 4. One Popup, One Job\n\nMultiple CTAs or mixed goals destroy performance.\n\n---\n\n## 3. Trigger Strategy (Choose Intentionally)\n\n### Time-Based (Use Sparingly)\n\n* ❌ Avoid: “Show after 5 seconds”\n* ✅ Better: 30–60 seconds of active engagement\n* Best for: Broad list building\n\n### Scroll-Based\n\n* Typical: 25–50% scroll depth\n* Indicates engagement, not curiosity\n* Best for: Blog posts, guides, long content\n\n### Exit Intent\n\n* Desktop: Cursor movement toward browser UI\n* Mobile: Back button / upward scroll\n* Best for: E-commerce, lead recovery\n\n### Click-Triggered (Highest Intent)\n\n* User initiates action\n* Zero interruption cost\n* Best for: Lead magnets, demos, gated assets\n\n### Session / Page Count\n\n* Trigger after X pages or visits\n* Best for: Comparison or research behavior\n\n### Behavior-Based (Advanced)\n\n* Pricing page visits\n* Add-to-cart without checkout\n* Repeated page views\n* Best for: High-intent personalization\n\n---\n\n## 4. Popup Types & Use Cases\n\n### Email Capture\n\n**Goal:** Grow list\n\n**Requirements**\n\n* Specific benefit (not “Subscribe”)\n* Email-only field preferred\n* Clear frequency expectation\n\n### Lead Magnet\n\n**Goal:** Exchange value for contact info\n\n**Requirements**\n\n* Show what they get (preview, bullets, cover)\n* Minimal fields\n* Instant delivery expectation\n\n### Discount / Promotion\n\n**Goal:** Drive first conversion\n\n**Requirements**\n\n* Clear incentive (%, $, shipping)\n* Single-use or limited\n* Obvious application method\n\n### Exit Intent\n\n**Goal:** Salvage abandoning users\n\n**Requirements**\n\n* Acknowledge exit\n* Different offer than entry popup\n* Objection handling\n\n### Announcement Banner\n\n**Goal:** Inform, not interrupt\n\n**Requirements**\n\n* One message\n* Dismissable\n* Time-bound\n\n### Slide-In\n\n**Goal:** Low-friction engagement\n\n**Requirements**\n\n* Does not block content\n* Easy dismiss\n* Good for secondary CTAs\n\n---\n\n## 5. Copy Frameworks\n\n### Headline Patterns\n\n* Benefit: “Get [result] in [timeframe]”\n* Question: “Want [outcome]?”\n* Social proof: “Join 12,000+ teams who…”\n* Curiosity: “Most people get this wrong…”\n\n### Subheadlines\n\n* Clarify value\n* Reduce fear (“No spam”)\n* Set expectations\n\n### CTA Buttons\n\n* Prefer first person: “Get My Guide”\n* Be specific: “Send Me the Checklist”\n* Avoid generic: “Submit”, “Learn More”\n\n### Decline Copy\n\n* Neutral and respectful\n* ❌ No guilt or manipulation\n* Examples: “No thanks”, “Maybe later”\n\n---\n\n## 6. Design & UX Rules\n\n### Visual Hierarchy\n\n1. Headline\n2. Value proposition\n3. Action (form or CTA)\n4. Close option\n\n### Close Behavior (Mandatory)\n\n* Visible “X”\n* Click outside closes\n* ESC key closes\n* Large enough on mobile\n\n### Mobile Rules\n\n* Avoid full-screen blockers\n* Bottom slide-ups preferred\n* Large tap targets\n* Easy dismissal\n\n---\n\n## 7. Frequency, Targeting & Rules\n\n### Frequency Capping\n\n* Max once per session\n* Respect dismissals\n* 7–30 day cooldown typical\n\n### Targeting\n\n* New vs returning visitors\n* Traffic source alignment\n* Page-type relevance\n* Exclude converters\n\n### Hard Exclusions\n\n* Checkout\n* Signup flows\n* Critical conversion steps\n\n---\n\n## 8. Compliance & SEO Safety\n\n### Accessibility\n\n* Keyboard navigable\n* Focus trapped while open\n* Screen-reader compatible\n* Sufficient contrast\n\n### Privacy\n\n* Clear consent language\n* Link to privacy policy\n* No pre-checked opt-ins\n\n### Google Interstitial Guidelines\n\n* Avoid intrusive mobile interstitials\n* Allowed: cookie notices, age gates, banners\n* Risky: full-screen mobile popups before content\n\n---\n\n## 9. Measurement & Benchmarks\n\n### Metrics\n\n* Impression rate\n* Conversion rate\n* Close rate\n* Time to close\n* Engagement before dismiss\n\n### Benchmarks (Directional)\n\n* Email popup: 2–5%\n* Exit intent: 3–10%\n* Click-triggered: 10%+\n\n---\n\n## 10. Output Format (Required)\n\n### Popup Recommendation\n\n* **Type**\n* **Goal**\n* **Trigger**\n* **Targeting**\n* **Frequency**\n* **Copy** (headline, subhead, CTA, decline)\n* **Design notes**\n* **Mobile behavior**\n\n### Multiple Popup Strategy (If Applicable)\n\n* Popup 1: Purpose, trigger, audience\n* Popup 2: Purpose, trigger, audience\n* Conflict and suppression rules\n\n### Test Hypotheses\n\n* What to test\n* Expected outcome\n* Primary metric\n\n---\n\n## 11. Common Mistakes (Flag These)\n\n* Showing popup too early\n* Generic “Subscribe” copy\n* No clear value proposition\n* Hard-to-close popups\n* Overlapping popups\n* Ignoring mobile UX\n* Treating popups as page fixes\n\n---\n\n## 12. Questions to Ask\n\n1. Primary goal of this popup?\n2. Current performance data?\n3. Traffic sources?\n4. Incentive available?\n5. Compliance requirements?\n6. Mobile vs desktop split?\n\n---\n\n## Related Skills\n\n* **form-cro** – Optimize the form inside the popup\n* **page-cro** – Optimize the surrounding page\n* **email-sequence** – Post-conversion follow-up\n* **ab-test-setup** – Test popup variants safely\n\n## When to Use\nThis skill is applicable to execute the workflow or actions described in the overview.\n\n## Limitations\n- Use this skill only when the task clearly matches the scope described above.\n- Do not treat the output as a substitute for environment-specific validation, testing, or expert review.\n- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.","tags":["popup","cro","antigravity","awesome","skills","sickn33","agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows"],"capabilities":["skill","source-sickn33","skill-popup-cro","topic-agent-skills","topic-agentic-skills","topic-ai-agent-skills","topic-ai-agents","topic-ai-coding","topic-ai-workflows","topic-antigravity","topic-antigravity-skills","topic-claude-code","topic-claude-code-skills","topic-codex-cli","topic-codex-skills"],"categories":["antigravity-awesome-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/sickn33/antigravity-awesome-skills/popup-cro","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add sickn33/antigravity-awesome-skills","source_repo":"https://github.com/sickn33/antigravity-awesome-skills","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 34616 github stars · SKILL.md body (6,774 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-04-23T00:51:24.266Z","embedding":null,"createdAt":"2026-04-18T21:42:31.890Z","updatedAt":"2026-04-23T00:51:24.266Z","lastSeenAt":"2026-04-23T00:51:24.266Z","tsv":"'000':505 '1':94,103,195,562,755,812 '10':724,728,729 '11':777 '12':504,808 '2':141,189,209,564,719,760,818 '25':288 '3':167,226,228,257,567,723,822 '30':273,620 '4':245,378,572,825 '5':270,488,720,828 '50':289 '6':556,831 '60':274 '7':607,619 '8':646 '9':699 'ab':864 'ab-test-setup':863 'abandon':444 'access':63,650 'acknowledg':447 'action':330,568,883 'activ':277 'add':364 'add-to-cart':363 'advanc':359 'age':688 'align':631 'allow':685 'announc':128,456 'annoy':55 'appear':183 'applic':438,753,877 'ask':811,921 'assess':96 'asset':340 'audienc':168,758,763 'avail':827 'avoid':267,537,592,681 'awar':186 'back':312 'banner':14,457,690 'base':264,286,358 'behavior':166,355,357,576,748 'behavior-bas':356 'benchmark':701,715 'benefit':390,493 'best':279,296,316,334,350,372 'better':272 'block':480 'blocker':596 'blog':298 'bottom':597 'bound':468 'boundari':929 'brand':23 'broad':281 'browser':309 'build':283 'bullet':415 'button':313,524 'cap':612 'captur':48,116,384 'cart':366 'case':382 'check':674 'checklist':536 'checkout':368,640 'choos':260 'clarif':923 'clarifi':515 'clear':236,398,429,664,790,896 'click':160,324,580,726 'click-trigg':323,725 'close':573,575,582,585,707,711,796 'commerc':320 'common':778 'comparison':352 'compat':660 'complaint':158 'complianc':647,829 'conflict':764 'consent':665 'consider':187 'contact':407 'content':302,481,698 'context':102,169 'contrast':662 'convers':17,150,232,244,427,644,705,859 'convert':43,637 'cooki':686 'cooldown':622 'copi':70,489,543,740,788 'core':190 'cost':333 'count':343 'cover':416 'creat':4 'criteria':932 'critic':643 'cro':3,26,84,93,840,849 'cta':523,571,743 'ctas':251,487 'curios':295,508 'current':142,149,155,819 'cursor':306 'data':821 'day':621 'declin':542,744 'deliveri':119,420 'demo':338 'depth':291 'describ':884,900 'design':40,197,200,557,745 'desktop':163,305,834 'destroy':255 'differ':449 'direct':716 'discount':120,422 'dismiss':235,465,483,606,618,714 'drive':425 'e':319 'e-commerc':318 'earli':785 'easi':234,482,605 'email':114,174,383,394,717,855 'email-on':393 'email-sequ':854 'engag':278,293,476,712 'enough':587 'entri':452 'environ':912 'environment-specif':911 'esc':583 'establish':101 'exampl':551 'exchang':404 'exclud':636 'exclus':639 'execut':879 'exist':147 'exit':123,303,440,448,721 'expect':400,421,522,773 'experi':21 'expert':30,917 'fail':140,208 'fear':518 'featur':126 'feedback':129,162 'field':396,418 'first':426,526 'fix':807 'flag':780 'flow':642 'focus':67,653 'follow':861 'follow-up':860 'form':77,83,569,839,843 'form-cro':82,838 'format':731 'framework':490 'frequenc':399,608,611,739 'friction':475 'full':594,693 'full-screen':593,692 'funnel':184 'gate':339,689 'generic':538,786 'get':413,494,511,528 'goal':37,254,385,403,424,442,458,472,736,814 'good':484 'googl':678 'grow':386 'guid':300,530 'guidelin':64,680 'guilt':548 'handl':455 'hard':638,794 'hard-to-clos':793 'harm':19,57 'headlin':491,563,741 'hierarchi':561 'high':42,375 'high-convert':41 'high-int':374 'highest':326 'hypothes':769 'ignor':800 'immedi':213 'impress':703 'in':12,677 'incent':430,826 'increas':16,240 'indic':292 'info':408 'inform':459 'initi':95,329 'input':926 'insid':78,844 'instant':419 'intent':124,237,261,304,327,376,441,722 'interrupt':45,220,332,461 'interstiti':679,684 'intrus':682 'job':110,249 'join':503 'key':584 'keyboard':651 'known':153 'languag':666 'larg':586,602 'later':555 'lead':117,321,336,401 'learn':540 'lever':233 'limit':436,888 'link':667 'list':282,387 'long':242,301 'long-term':241 'low':474 'low-frict':473 'magnet':118,337,402 'make':99 'mandatori':577 'manipul':550 'match':897 'max':613 'mayb':554 'measur':700 'messag':464 'method':439 'metric':702,776 'minim':417 'miss':934 'mistak':779 'mix':253 'mobil':165,311,589,590,683,695,747,801,832 'modal':8,34 'moment':53,206 'movement':307 'multipl':250,749 'must':211,216 'navig':652 'negoti':194 'neutral':544 'new':176,625 'newslett':115 'non':193 'non-negoti':192 'note':746 'notic':687 'object':454 'obvious':437 'offer':450 'one':246,248,463 'open':656 'opt':676 'opt-in':675 'optim':6,35,75,86,841,850 'option':574 'organ':173 'outcom':500,774 'output':730,906 'outsid':581 'overlap':798 'overlay':9 'overview':887 'page':88,92,180,342,347,361,370,633,806,848,853 'page-cro':91,847 'page-typ':632 'paid':172 'pattern':46,492 'peopl':510 'per':615 'perfect':199 'perform':256,820 'permiss':927 'person':377,527 'polici':670 'popup':2,7,25,32,80,104,113,138,148,182,201,247,379,453,696,718,733,750,754,759,783,797,799,804,817,846,868 'popup-cro':1 'post':299,858 'post-convers':857 'pre':673 'pre-check':672 'prefer':397,525,601 'preview':414 'price':360 'primari':775,813 'principl':191 'privaci':663,669 'promot':122,423 'proof':502 'proposit':566,792 'purchas':188 'purpos':105,134,756,761 'question':498,809 'rage':159 'rate':151,704,706,708 'reader':659 'recommend':100,734 'recoveri':322 'reduc':517 'referr':175 'relat':836 'relev':635 'repeat':369 'requir':97,388,409,428,446,462,477,732,830,925 'research':354 'respect':44,229,546,617 'restraint':239 'result':495 'return':178,627 'review':918 'right':52 'riski':691 'rule':73,559,591,610,767 'safe':870 'safeti':649,928 'salvag':443 'save':125 'scope':899 'screen':595,658,694 'screen-read':657 'scroll':285,290,315 'scroll-bas':284 'second':227,271,275 'secondari':486 'see':81,90 'send':533 'seo':61,648 'sequenc':856 'session':341,616 'set':521 'setup':866 'ship':431 'show':268,410,782 'shown':202 'signup':641 'singl':109,433 'single-us':432 'skill':66,837,875,891 'skill-popup-cro' 'slide':11,470,599 'slide-in':10,469 'slide-up':598 'social':501 'sourc':171,630,824 'source-sickn33' 'spam':520 'spare':266 'specif':389,532,913 'split':835 'stage':185 'state':143 'step':645 'stop':919 'strategi':69,259,751 'subhead':742 'subheadlin':514 'submit':539 'subscrib':392,787 'substitut':909 'success':931 'suffici':661 'suppress':766 'surround':852 'survey':131 'tap':603 'target':604,609,624,738 'task':895 'team':506 'term':243 'test':768,772,865,867,915 'thank':553 'time':196,263,467,709 'time-bas':262 'time-bound':466 'timefram':497 'topic-agent-skills' 'topic-agentic-skills' 'topic-ai-agent-skills' 'topic-ai-agents' 'topic-ai-coding' 'topic-ai-workflows' 'topic-antigravity' 'topic-antigravity-skills' 'topic-claude-code' 'topic-claude-code-skills' 'topic-codex-cli' 'topic-codex-skills' 'toward':308 'traffic':170,629,823 'trap':654 'treat':803,904 'trigger':71,154,258,325,344,727,737,757,762 'trust':24,58 'type':380,634,735 'typic':287,623 'ui':310 'unclear':136 'understand':217 'up':600 'upward':314 'use':156,265,381,434,873,889 'user':20,56,157,215,328,445 'ux':558,802 'valid':914 'valu':49,210,405,516,565,791 'variant':869 'view':371 'violat':60 'visibl':578 'visit':349,362 'visitor':179,628 'visual':560 'vs':164,177,626,833 'want':499 'without':18,54,367 'workflow':881 'worth':222 'wrong':205,513 'x':346,579 'zero':331","prices":[{"id":"6b7df67e-ac15-4976-b5df-09cfa9ad6728","listingId":"d045d0c8-da23-490a-b290-5d9b32c908f2","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"sickn33","category":"antigravity-awesome-skills","install_from":"skills.sh"},"createdAt":"2026-04-18T21:42:31.890Z"}],"sources":[{"listingId":"d045d0c8-da23-490a-b290-5d9b32c908f2","source":"github","sourceId":"sickn33/antigravity-awesome-skills/popup-cro","sourceUrl":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/popup-cro","isPrimary":false,"firstSeenAt":"2026-04-18T21:42:31.890Z","lastSeenAt":"2026-04-23T00:51:24.266Z"}],"details":{"listingId":"d045d0c8-da23-490a-b290-5d9b32c908f2","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"sickn33","slug":"popup-cro","github":{"repo":"sickn33/antigravity-awesome-skills","stars":34616,"topics":["agent-skills","agentic-skills","ai-agent-skills","ai-agents","ai-coding","ai-workflows","antigravity","antigravity-skills","claude-code","claude-code-skills","codex-cli","codex-skills","cursor","cursor-skills","developer-tools","gemini-cli","gemini-skills","kiro","mcp","skill-library"],"license":"mit","html_url":"https://github.com/sickn33/antigravity-awesome-skills","pushed_at":"2026-04-22T06:40:00Z","description":"Installable GitHub library of 1,400+ agentic skills for Claude Code, Cursor, Codex CLI, Gemini CLI, Antigravity, and more. Includes installer CLI, bundles, workflows, and official/community skill collections.","skill_md_sha":"bfa2692bcd59678141e2294c87cb388db6a301e2","skill_md_path":"skills/popup-cro/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/popup-cro"},"layout":"multi","source":"github","category":"antigravity-awesome-skills","frontmatter":{"name":"popup-cro","description":"Create and optimize popups, modals, overlays, slide-ins, and banners to increase conversions without harming user experience or brand trust."},"skills_sh_url":"https://skills.sh/sickn33/antigravity-awesome-skills/popup-cro"},"updatedAt":"2026-04-23T00:51:24.266Z"}}