Batch-Generate Meta Descriptions with AI (Carefully)

Draft meta descriptions in batches of 10 with AI, spot-check 30% for hallucinations, ship in one PR. Realistic CTR lift on thin pages: 10-20% as of June 2026.

You launched 80 articles in a quarter and 30 of them have a meta description that is just the title rephrased. Click-through on those pages is about half of where it should be. This tutorial takes a content-site owner or in-house SEO from “uneven meta coverage” to “every article has a tight, accurate description that earns the click” — using AI for the first draft and a disciplined spot-check to keep invented claims off your site. On previously thin pages, a 10-20% CTR lift once Google re-indexes the new descriptions is realistic (as of June 2026).

TL;DR

  • Export article metadata (slug, title, H1, keyword, first 200 words) to a CSV.
  • Prompt AI in batches of 10. Bigger batches let models drift and invent claims.
  • Spot-check 30% of each batch against the article body; reject any description that states something the article does not.
  • Target 120-155 characters and front-load the keyword in the first 110 characters so it survives mobile truncation.
  • Ship in one PR. Measure CTR in Search Console against an unchanged control set after 4-6 weeks.

Why bother in the AI Overviews era

It is fair to ask whether descriptions still matter when Google rewrites most of them and AI Overviews are eating clicks. Two June-2026 numbers settle it. First, Google rewrites roughly 63% of meta descriptions in search results to better match the query, per a 2026 SERP study — but a clean, specific description biases that rewrite in your favor and shows verbatim on the ~37% it leaves alone, almost always long-tail queries where intent is precise. Second, Ahrefs found that an AI Overview on the query correlates with a 58% lower CTR for the top organic result. When the blue link gets fewer impressions, every remaining click is worth more, which makes a sharper snippet a higher-leverage fix than it was two years ago.

So: write descriptions, but spend your effort where it compounds. That is exactly what a batch-with-spot-check workflow is for.

Who this is for

Content sites with 50 or more articles where meta coverage is uneven — either missing (the CMS falls back to the first 160 characters of body, which is usually a navigation menu) or templated identically across a category. Also useful for SEO teams running a quality refresh on legacy pages. If you have under 20 articles, skip the tooling and write them by hand. And hand-write your top 10 traffic pages, YMYL pages (medical, financial, legal), and any page whose description doubles as an email subject or social card — those need a human and a different voice.

Before you start

  • Know the truncation limits. Google measures snippets in pixels, not characters: about 920 px (~155-158 chars) on desktop and 680 px (~120 chars) on mobile. Target 120-155 characters and put the keyword and the value prop in the first 110 so mobile never cuts them.
  • Have a primary keyword per article. Without one, AI optimizes for fluency over searchability. Keep a column with the target keyword per row.
  • Define “accurate” for your site. Are “complete guide” and “comprehensive” allowed? List your banned adjectives up front.
  • Capture a baseline. Pull at least 28 days of Search Console data for the pages you will change. In the Performance report, sort by impressions descending and flag rows with CTR under ~2% — those are your highest-impression, lowest-CTR pages and the best first targets.

Step by step

  1. Export the article list with these columns: slug, title, H1, primary keyword, first 200 words of body, current meta description (if any). A short script against your CMS API does this in minutes.
  2. Prompt AI per batch of 10. Ten keeps quality high and lets you check three before approving the rest. GPT-5.5, Claude Sonnet 4.6, and Gemini 3.1 Pro all handle this well; Sonnet 4.6 tends to follow the character limit most reliably in testing. Use a precise prompt:
For each article below, write a meta description:
- 120-155 characters (count characters, not words)
- Put the primary keyword in the first 110 characters
- Accurately summarize the article — invent nothing
- Ban clickbait: "ultimate", "secret", "you won't believe"
- Active voice
- Different sentence structure from the title
Return as CSV: slug, description, char_count
  1. Spot-check three random outputs per batch. Confirm the char count is in range, the keyword sits in the first half, and every claim in the description appears in the body. Reading the first paragraph is usually enough.
  2. Reject and regenerate anything that misrepresents the article. The three recurring failures: AI invents a statistic the article does not contain, calls a conceptual piece “step-by-step,” or repeats the title nearly verbatim.
  3. Update frontmatter or the CMS in one PR. One PR keeps the diff reviewable; piecemeal edits are how you lose track of what changed.
  4. Measure after 4-6 weeks. In Search Console, use a regex page filter (updated March 2026 to support compare) to isolate the changed URLs and compare CTR against an unchanged control set in the same category. Give it 2-4 weeks to re-index and 6 for a confident read.

Run it once on a 10-article batch

  1. Pick the 10 lowest-CTR articles in Search Console (easy wins) plus the one whose meta most embarrasses you (high-value win). Mix high-traffic with high-issue.
  2. Time-box it: export 5 min, AI batch 5 min, spot-check 15 min, deploy 10 min — about 35 minutes total.
  3. Save every rejected output. Patterns in rejections become rules in the next prompt (“the model keeps inventing real-world examples — add it to the banned list”).
  4. On the second batch, change exactly one variable: a tighter character range or a longer banned-adjective list. One variable at a time tells you what actually moved the needle.

Quality gate before you ship

  • Sample 10% of every batch and read each description against its article. Models drift on long batches, so check the late entries hardest.
  • Preview desktop and mobile in Google’s Rich Results Test. If mobile truncates the keyword, the description is too long.
  • Diff against the old meta where one existed. If the new version is shorter and clearer, ship. If it just rearranges the same words, the AI added nothing — rewrite by hand.
  • Scan the batch as a single column. If every description opens with the same verb, the prompt was too rigid; add a variation constraint.

Make it repeatable

  • Save the prompt, the banned-adjective list, and the spot-check checklist as a project doc. A new editor is productive in ten minutes.
  • Keep a slightly different prompt per content type: tutorials emphasize “how to,” listicles emphasize the count, news emphasizes recency.
  • Re-audit every 6 months. SERP layouts shift, AI Overviews expand, and what fit last year may truncate now.

Common mistakes

  • Trusting the summary without a spot-check. AI can write a claim that matches the title but not the body.
  • One template for every description. It looks templated to Google and to humans; add variation constraints.
  • Not measuring the CTR delta. Without a control set you cannot tell whether the rewrite helped or hurt.
  • Going past 155 characters. Truncation cuts the value prop mid-sentence.
  • Stuffing the keyword three times. Once in the first half is enough; more reads as spam.
  • Skipping low-traffic pages. Low CTR on low traffic is a compounding loss and the cheapest lift on the site.

FAQ

  • If Google rewrites most descriptions, why write them?: A 2026 study puts the rewrite rate near 63%. The ~37% Google leaves alone are mostly precise long-tail queries — the highest-intent traffic you have. And on rewrites, Google draws from your description when it is clean, so a good one biases the snippet your way.
  • How long should the description really be?: 120-155 characters, with the keyword and value prop inside the first 110 so they survive the ~120-character mobile cut.
  • Should I include the brand name?: Only if the brand is itself a search signal. Otherwise the brand is already in the title; the description should sell the click.
  • Can I reuse one meta across translations?: No. Hand each language to a native speaker or a model fluent in it. Default machine translation reads awkwardly and undersells the click.
  • Do meta descriptions affect rankings?: Not directly — Google has said so for years. They influence CTR, which is a usability signal, but the description is not a ranking factor on its own.
  • What about empty meta tags?: Google falls back to body text, often a navigation menu. Empty is worse than imperfect — generate something.

Tags: #Tutorial #SEO #AI coding