Your files never leave your device. All processing happens locally in your browser.
How do I preview how my Google search ad (responsive search ad) will look — desktop and mobile — with the correct headline and description character limits?
Open AnyTool’s Google Ads Preview, enter your Responsive Search Ad (RSA) assets — up to 15 headlines (each ≤30 characters), up to 4 descriptions (each ≤90 characters), a final URL and up to 2 display paths (each ≤15 characters) — and the tool assembles a SAMPLE ad the way Google does and renders it as a DESKTOP and MOBILE search-ad card: a “Sponsored” label, the display URL (your final-URL domain + /path1/path2), up to 3 headlines joined with “ | ” and up to 2 descriptions. Live counters (0/30, 0/90, 0/15) flag any over-limit field, and an asset-checks panel warns when you have fewer than the minimum 3 headlines or 2 descriptions, on duplicates, or when you have too few diverse assets, with a rough strength meter. A “Shuffle combination” button re-rolls a different mix because Google MIXES & MATCHES your assets automatically (typically up to 3 headlines + 2 descriptions per impression, fewer on mobile) and you do NOT control which combination shows unless you PIN a headline to position 1/2 or a description to position 1. Everything runs in your browser, so nothing is uploaded and your Google Ads account is never touched. Honest caveat: this is a VISUAL MOCKUP of the RSA format with current limits — the real ad may include sitelinks, callouts and other extensions, is subject to Google’s policies and approval, and the “asset strength” here is a local estimate, not Google’s official Ad Strength. Build and verify your ad in Google Ads.
Enter up to 15 headlines (≤30 chars), 4 descriptions (≤90 chars), a final URL and 2 paths (≤15 chars) with live counters
Renders a desktop + mobile search-ad mockup: Sponsored label, display URL, up to 3 headlines (| joined) + 2 descriptions
Shuffle re-rolls a different combination because Google mixes & matches automatically; mobile shows fewer assets
Asset-checks panel: over-limit, fewer than 3 headlines / 2 descriptions, duplicates, low diversity, with a rough strength meter
Honest: Google picks the combination (pin to control it), the real ad may add extensions, and this is NOT the Ads editor or Ad Strength
What is
Responsive Search Ad (RSA) preview
A Responsive Search Ad is Google’s standard text-ad format on the search results page: you supply a POOL of assets — up to 15 headlines (each up to 30 characters) and up to 4 descriptions (each up to 90 characters), plus a final URL and up to 2 optional display-path fields (each up to 15 characters) — and Google’s machine learning MIXES & MATCHES them, assembling many combinations and serving whichever it predicts will perform best for each query and device. A served ad shows a “Sponsored” label, the display URL (the domain of your final URL, optionally followed by /path1/path2), and typically up to 3 headlines and 2 descriptions on desktop, often fewer on mobile or crowded results (a minimum of 2 headlines and 1 description always shows). You must provide at least 3 headlines and 2 descriptions; Google recommends a fuller, more diverse pool. PINNING locks a specific headline to position 1 or 2, or a description to position 1, if you must guarantee it appears. An RSA preview tool lets you type these assets, check each against its character limit, and mock up how the assembled ad looks on desktop and mobile — without it being the live ad, which Google controls.
Up to 15 headlines of 30 characters each and up to 4 descriptions of 90 characters each, plus two optional display paths of 15 characters each. You must provide at least 3 headlines and 2 descriptions.
A Google responsive search ad accepts up to 15 headlines, each a maximum of 30 characters, and up to 4 descriptions, each a maximum of 90 characters. The display URL is the domain of your final URL, after which you can add two optional display-path fields of up to 15 characters each (yoursite.com/path1/path2). Google requires a minimum of 3 headlines and 2 descriptions, but recommends supplying a fuller, more diverse pool — many advertisers aim for 8 to 15 headlines and all 4 descriptions — so Google’s machine learning has more raw material to combine. Double-width languages such as Japanese, Korean and Chinese count each character as two. This tool enforces those exact limits with live counters and warns when you fall below the minimums or duplicate assets.
Because Google mixes and matches your assets automatically, serving up to 3 headlines and 2 descriptions per impression (fewer on mobile). You only control the combination by PINNING.
A responsive search ad is not a fixed ad — Google assembles your headlines and descriptions into many combinations and serves whichever it predicts will perform best for each search and device, so the same ad shows different text to different people. A served impression typically includes up to 3 headlines and 2 descriptions on desktop, and often fewer on mobile or when the results page is crowded (a minimum of 2 headlines and 1 description always shows). You do NOT choose the combination unless you PIN: pinning a headline to position 1 or 2, or a description to position 1, guarantees that asset appears in that slot, though over-pinning reduces the combinations Google can test and can lower Ad Strength. This tool’s “Shuffle combination” button demonstrates that rotation by re-rolling a different mix on demand, and it shows fewer assets when you switch to the mobile view.
No. This is a visual mockup of the RSA format with current character limits. The real ad may add sitelinks and other extensions, is subject to Google’s approval, and Google picks the live combination — build and verify in Google Ads.
This tool is a visual MOCKUP, not the Google Ads editor and not Google’s Ad Strength. It previews the responsive search ad format with the correct character limits so you can check fit and validate your assets, but the live ad differs in several ways: Google assembles and serves the combination (you only influence it by pinning), the real ad may include sitelinks, callouts, structured snippets, images and other extensions, it can render in different layouts, and every asset is subject to Google’s advertising policies and editorial approval before it runs. The “asset strength” shown here is a rough local estimate of your pool, not Google’s official Ad Strength rating, which uses signals this tool cannot see. Use this to draft and sanity-check copy, then build and verify the actual ad in your Google Ads account.
No. Your headlines, descriptions, final URL and paths are measured, validated and assembled into the preview entirely in your browser — nothing is fetched, uploaded, logged or stored, and your Google Ads account is never touched.
The Google Ads Preview is 100% client-side. Your headlines, descriptions, final URL and display paths are plain strings that are counted, validated and combined into the desktop and mobile mockup on your device using ordinary JavaScript — nothing is fetched, uploaded, logged or stored on a server, no CDN is called, and the tool has no connection to your Google Ads account. That makes it safe to draft unreleased campaigns and sensitive offers. It works offline once cached as a PWA, supports dark mode and mobile with a sticky Shuffle / Copy bar, and you can copy your full asset list to paste into Google Ads when you are ready to build the real ad.
Detailed Explanation
📖How It Works
What the Google Ads Preview Builds and Validates
The Google Ads Preview is a client-side mockup tool for Google’s standard search-ad format, the RESPONSIVE SEARCH AD (RSA). The user enters a POOL of assets — up to 15 headlines (each up to 30 characters), up to 4 descriptions (each up to 90 characters), a final URL, and up to 2 optional display-path fields (each up to 15 characters) — through repeatable rows, each with a live character counter (0/30, 0/90, 0/15) that turns amber near the cap and red over it. From those assets the tool DERIVES the display URL the way Google does (the domain of the final URL, optionally followed by /path1/path2) and ASSEMBLES a sample served ad: a “Sponsored” label, the display URL, up to 3 headlines joined with “ | ”, and up to 2 descriptions, rendered as both a DESKTOP and a MOBILE search-ad card (the mobile card shows fewer assets, mirroring Google). A “Shuffle combination” button re-rolls a different mix because a real RSA is not fixed — Google mixes & matches the assets automatically and serves whichever combination it predicts will perform best, and the user only controls the combination by pinning. An asset-checks panel validates the pool: over-limit fields, fewer than the required 3 headlines or 2 descriptions, duplicate assets, and too few diverse headlines, plus a rough local strength meter (Poor / Average / Good / Excellent). Everything is computed in the browser from plain strings.
Inputs: up to 15 headlines (≤30 chars), 4 descriptions (≤90 chars), final URL, 2 display paths (≤15 chars), each with a live counter
Derives the display URL (final-URL domain + /path1/path2) and assembles a Sponsored + headlines + descriptions sample ad
Renders desktop + mobile search-ad cards; mobile shows fewer assets (typically up to 3 headlines + 2 descriptions desktop, fewer mobile)
Shuffle re-rolls a different combination because Google mixes & matches automatically and the user only pins to control it
Asset-checks panel: over-limit, below the 3-headline / 2-description minimum, duplicates, low diversity, with a rough strength meter
⚙️Methodology
How the Ad Is Assembled and the Assets Are Validated
All logic is a small inline engine — no new dependency. The display URL is built by parsing the final URL with the browser’s URL constructor to take its hostname, then appending the trimmed, slash-stripped path1 and path2 segments (domain/path1/path2); an unparseable URL falls back to the first token before any slash. The served-ad combination is produced deterministically: a tiny mulberry32 pseudo-random generator is seeded from React state, and a pick() helper draws distinct assets without replacement (mirroring Google’s “avoid redundancy” behaviour) — up to 3 headlines and 2 descriptions for the desktop view, and up to 2 headlines and 1 description for the mobile view. Pressing “Shuffle combination” advances the seed, so the same assets re-assemble into a different, reproducible mix, demonstrating that the live ad rotates. Validation runs over the raw asset arrays: it counts headlines/descriptions exceeding 30/90 characters and paths exceeding 15, checks the minimums (at least 3 headlines and 2 descriptions), detects case-insensitive duplicate headlines and descriptions, recommends 8–15 diverse headlines and all 4 descriptions, and emits fix / warn / info / pass items sorted error → warn → info → ok. A separate, clearly-labelled heuristic estimates asset-pool strength from unique-asset counts and headline-length variety — explicitly a local estimate, NOT Google’s official Ad Strength. When all fields are empty the preview falls back to a labelled SAMPLE ad so the card is never blank, while the meters and checks reflect only the user’s real input.
Display URL uses the URL constructor to take the final-URL hostname, then appends trimmed path1 / path2 segments
Combinations use a seeded mulberry32 PRNG + draw-without-replacement, so Shuffle gives a different but reproducible mix
Desktop assembles up to 3 headlines + 2 descriptions; mobile up to 2 headlines + 1 description
Validation: over-limit counts, the 3-headline / 2-description minimum, case-insensitive duplicates, diversity recommendation, sorted error → warn → info → ok
Asset strength is a clearly-labelled local heuristic from unique-asset counts and length variety, NOT Google’s Ad Strength
⚠️Limitations
A Visual Mockup — Google Picks the Combination and May Add Extensions
The tool is explicit that it is a VISUAL MOCKUP of the RSA format with current character limits, not the live ad and not the Google Ads editor, for several honest reasons. First, GOOGLE MIXES & MATCHES your assets: a responsive search ad is a pool, and Google assembles many combinations and serves whichever it predicts will perform best for each query and device — so the same ad shows different text to different people, and any single mockup here is just one possible combination (hence the Shuffle button). Second, a served impression typically shows UP TO 3 HEADLINES AND 2 DESCRIPTIONS on desktop and OFTEN FEWER ON MOBILE or crowded results (a minimum of 2 headlines and 1 description always shows), which the desktop/mobile toggle reflects. Third, YOU DO NOT CONTROL THE COMBINATION unless you PIN — pinning a headline to position 1 or 2, or a description to position 1, guarantees that asset appears there, though over-pinning reduces what Google can test. Fourth, the REAL AD MAY INCLUDE EXTENSIONS — sitelinks, callouts, structured snippets, images, location and call assets — and can render in different layouts, none of which this mockup draws. Fifth, every asset is subject to GOOGLE’S POLICIES AND EDITORIAL APPROVAL before it runs. Sixth, the “asset strength” shown is a rough LOCAL ESTIMATE, not Google’s official Ad Strength, which uses signals this tool cannot see. The guidance is to draft and sanity-check copy here, then build and verify the actual ad in Google Ads.
Google mixes & matches the asset pool and serves the combination it predicts best — any single mockup is just one of many
Typically up to 3 headlines + 2 descriptions per impression on desktop, often fewer on mobile (min 2 headlines + 1 description)
You only control which combination shows by PINNING headlines to position 1/2 or a description to position 1
The real ad may add sitelinks, callouts, structured snippets, images and other extensions this mockup does not draw
Asset strength here is a local estimate, NOT Google’s Ad Strength; assets are subject to Google’s policies and approval — verify in Google Ads
🔒Privacy & Security
Why Mocking Up Your Ad In-Browser Is a Privacy Win
Many ad-preview tools sit behind a sign-in or send your copy to a server to render a mockup. The Google Ads Preview instead treats your headlines, descriptions, final URL and display paths as plain strings that are counted, validated and assembled into the desktop and mobile mockup entirely on your device with ordinary JavaScript; nothing is fetched, uploaded, logged or stored, no CDN is called, and the tool has no connection to your Google Ads account. That makes it safe to draft unreleased campaigns, sensitive promotions and competitive offers without exposing them. It works offline once cached as a PWA, supports dark mode and a mobile layout with a sticky Shuffle / Copy action bar, has exactly three ad slots, and adds NO new dependency — the display-URL builder, the seeded combination assembler and the validation are a small inline engine in the page. When you are ready to build the real ad, a one-click “Copy all assets” exports your headlines, descriptions and URLs as text to paste into Google Ads.
Ad copy is measured, validated and assembled locally — never uploaded, no server, no CDN, no Google Ads account connection
Safe for drafting unreleased campaigns and sensitive offers
Works offline once cached; dark mode and mobile with a sticky Shuffle / Copy bar; exactly three ad slots
No new dependency — the display-URL builder, seeded combination assembler and validation are a small inline engine
One-click Copy all assets exports headlines, descriptions and URLs as text to paste into Google Ads
Ad preview: in-browser RSA mockup (AnyTool) vs typical online ad previewers
Capability
AnyTool
Typical online tools
Format
Responsive search ad with current 30 / 90 / 15 limits
Often the older expanded text ad or generic mock
Processing
Assembles + validates in your browser
Sends your copy to a server, or needs a sign-in
Your copy
Never uploaded, works offline
Stored on a server / tied to an account
Combinations
Shuffle re-rolls a different mix (mixes & matches)
States Google picks the combination, may add extensions, not Ad Strength
Often implies the mockup is the live ad
AnyTool is a 100% client-side responsive-search-ad mockup: enter up to 15 headlines (≤30 chars), 4 descriptions (≤90 chars), a final URL and 2 display paths (≤15 chars) with live counters, and it derives the display URL (domain + /path1/path2) and assembles a Sponsored + up-to-3-headlines + up-to-2-descriptions sample ad on desktop and mobile, with a Shuffle button that re-rolls a different combination. Honest caveat: a real RSA is a pool Google MIXES & MATCHES — it serves up to 3 headlines and 2 descriptions per impression (fewer on mobile) and you only control the combination by PINNING; the live ad may add sitelinks, callouts and other extensions and is subject to Google’s policies and approval; the asset-strength reading is a local estimate, not Google’s official Ad Strength. This is a visual mockup, not the Google Ads editor — build and verify in Google Ads. Comparison as of June 2026.