Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Writes Google Ads copy including RSA headlines, descriptions, extensions, DKI, and CTAs optimized for Quality Score and search intent. Use when creating, auditing, or rewriting Google Search ad campaigns from keyword research through final copy with extensions.
| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-10 | ✗→✓ | ▲ Improved | 279% | 0% |
| case-18 | ✗→✓ | ▲ Improved | 158% | 0% |
| case-19 | ✗→✓ | ▲ Improved | 309% | 0% |
| case-12 | ✓→✗ | ▼ Worse | 267% | 0% |
| case-06 | ✓→✓ | = Same ✓ | 127% | 0% |
{KeyWord:} wrapper must fit within the headline's 30-char limit. The longest keyword in the ad group determines whether DKI is safe.Critical: LLMs consistently miscount characters by 1-3. Never estimate. Count every character deterministically using a reliable method. "Expert cosmetic dentistry" = 25 chars, not 28. Recount before finalizing.
Only these are valid: Amenities, Brands, Courses, Degree programs, Destinations, Featured hotels, Insurance coverage, Models, Neighborhoods, Service catalog, Shows, Styles, Types. Anything else (e.g., "Features," "Integrations," "Coverage Options") will be rejected by Google.
{KeyWord:Default Text} — Title Case each word{Keyword:Default Text} — Sentence case{keyword:default text} — lowercase{KEYWORD:DEFAULT TEXT} — ALL CAPS| Intent | User Mindset | Headline Approach | CTA Style | |---|---|---|---| | Informational | Learning | Educate, guide | "Learn More," "Read the Guide" | | Commercial | Comparing | Differentiate, prove | "Compare Plans," "See Why We're #1" | | Transactional | Buying | Sell, convert | "Buy Now," "Start Free Trial" | | Navigational | Finding specific brand | Confirm identity, redirect | "Official Site," "Log In Here" |
Task: Write a complete RSA for a SaaS project management tool targeting "project management software"
Step 1 — Count characters BEFORE writing: Plan each headline to land at 25-29 chars. Never rely on estimation.
Step 2 — Write 15 headlines with variety:
Pin 1: "Project Management Software" (28 chars) — keyword match
Pin 2: "Start Your Free Trial Today" (27 chars) — CTA
: "Trusted by 10,000+ Teams" (24 chars) — social proof
: "Cut Project Time by 40%" (23 chars) — specific benefit
: "All Tasks in One Dashboard" (26 chars) — feature/benefit
: "No Credit Card Required" (23 chars) — objection handler
: "Award-Winning PM Platform" (25 chars) — authority
: "Plans Starting at $9/Mo" (22 chars) — price anchor
: "See Results in Week One" (23 chars) — speed
: "Built for Remote Teams" (22 chars) — audience
: "Gantt Charts & Kanban" (21 chars) — feature specific
: "Replace Spreadsheet Chaos" (25 chars) — pain point
: "Enterprise-Grade Security" (25 chars) — trust
: "Integrate With 200+ Apps" (24 chars) — ecosystem
: "5-Star Rated on G2 & Capterra" (29 chars) — social proofStep 3 — Write 4 descriptions (each independent, each under 90 chars):
"Manage tasks, timelines & teams in one intuitive platform. Start free — no card needed." (88 chars)
"Join 10,000+ teams who cut project delivery time by 40%. See the difference in one week." (89 chars)
"Drag-and-drop Gantt charts, Kanban boards & real-time reporting. Plans from $9/month." (86 chars)
"Rated 4.8/5 on G2. Integrates with Slack, Jira & 200+ tools. Try it free for 14 days." (87 chars)Step 4 — Verify every character count. Recount each headline and description character by character.
IF header NOT IN [Amenities, Brands, Courses, Degree programs, Destinations, Featured hotels, Insurance coverage, Models, Neighborhoods, Service catalog, Shows, Styles, Types]: REJECT header SELECT closest valid alternative from approved list NOTE the substitution
FOR each keyword in ad group: insertion = apply_capitalization(keyword, dki_format) full_headline = template.replace(dki_placeholder, insertion) char_count = count_characters(full_headline) IF char_count > 30: FLAG as overflow, default text will show IF insertion creates grammatical/semantic issues: FLAG PROVIDE at least 2 static non-DKI headline alternatives
If writing headlines:
If choosing DKI vs. static headlines:
If diagnosing Quality Score issues:
If classifying search intent:
If writing extensions:
If writing urgency/CTAs:
Trap: The agent writes "Best Noise Canceling Earbuds" and reports "30 chars." Actual count: 28. Correct handling: Count each character: B-e-s-t-space]-N-o-i-s-e-space]-C-a-n-c-e-l-i-n-g-space]-E-a-r-b-u-d-s = 28. Always recount. Report the count next to each line item.
Trap: Template is {KeyWord:Running Shoes} (total 30 chars with longest keyword "lightweight waterproof running shoes"). DKI will overflow, but the agent doesn't flag it. Correct handling: Calculate: "Lightweight Waterproof Running Shoes" = 36 chars. This exceeds 30. Flag it. Note the default "Running Shoes" will display instead (which works at 13 chars in the template context). Provide 2 static alternatives.
Trap: Agent uses "Features" or "Integrations" as a snippet header. Correct handling: Neither exists in Google's approved list. Map "Features" → "Types" or "Service catalog." Map "Integrations" → "Brands" (if listing integration partner brands). Always state the mapping rationale.
Trap: Headline: "Our Award-Winning Software" / Description: "It also comes with free support." ("It" has no clear referent if paired with a different headline like "Start Your Free Trial.") Correct handling: Each description must be self-contained. Rewrite: "Award-winning software with free 24/7 support. Try it risk-free today."
Trap: "CRM software" could be informational (what is it?) or transactional (buy it). Agent writes purely transactional copy and alienates researchers. Correct handling: Pin a keyword-rich headline to P1 for relevance. Include one description that educates ("See How CRM Centralizes Your Sales Pipeline") and one that converts ("Start Your 14-Day Free Trial — No Card Needed").
Trap: Ad copy says "Last Chance — Sale Ends Soon!" but runs indefinitely with no actual deadline. Correct handling: This violates Google's misrepresentation policy. Replace with value-based urgency: "Start Saving on Your Plan Today" or tie to a real event: "Black Friday Pricing — Ends Nov 30."
Trap: Two ad groups — "project management tool" and "project management software" — with nearly identical copy. Correct handling: These should be one ad group. If kept separate, differentiate messaging: "tool" group emphasizes ease/simplicity, "software" group emphasizes enterprise features/integrations.
DON'T estimate character counts. Instead, count every character deterministically and report the count inline (e.g., "Start Free Trial Today" (22 chars)).
DON'T return empty or partial responses when a task is complex. Instead, state assumptions, break the task into parts, and deliver complete output for each part. Partial output with caveats > no output.
DON'T invent structured snippet headers. Instead, reference the 13 approved headers and select the closest match. If none fit, use "Types" or "Service catalog" as the most flexible defaults.
DON'T write descriptions that only make sense with one specific headline. Instead, read each description in isolation and ask: "Does this make complete sense paired with ANY of my 15 headlines?"
DON'T keyword-stuff headlines. Instead, include the primary keyword naturally in 2-3 headlines maximum. Use the remaining 12-13 headlines for benefits, proof, CTAs, and differentiation.
DON'T use generic CTAs ("Click Here," "Learn More," "Submit") for transactional intent. Instead, match the CTA to the conversion action: "Get Your Free Quote," "Book a Demo," "Start Your Trial."
DON'T list features without connecting them to outcomes. Instead of "Gantt Charts, Kanban Boards, Reports" write "Plan Projects Visually With Drag-and-Drop Gantt Charts."
DON'T create fake urgency. Instead, use legitimate deadlines, real scarcity, or value-based motivation. Fake countdown timers and perpetual "last chance" claims violate Google policy and erode trust.
DON'T provide DKI templates without testing every keyword in the ad group against the character limit. Instead, list each keyword, compute the resulting headline length, and flag any that overflow or produce awkward copy.
Other measured skills in the registry, with their headline benchmark lift.