14 production-tested tactics, 12 copy-paste AI prompts, 7 schema types, and the complete framework behind a content engine that went from 428K to 2.74M monthly impressions in 3 months. Every tactic validated on a live site with 960+ pages and 1,000+ indexed routes.
The SEO landscape has fractured. Google still drives >60% of organic discovery, but a rapidly growing share now flows through AI-powered tools β Perplexity, ChatGPT with browsing, Claude, Gemini β that cite sources rather than rank pages. The two channels optimize for different signals. Winning in 2026 requires a dual-stack strategy.
This guide documents a production-tested technical framework covering title engineering, structured data, AI Engine Optimization (AEO), content auditing at scale, internal linking, indexable interactive tools, URL hygiene, programmatic OG images, automation systems, and measurement β plus 12 copy-paste AI prompts you can deploy immediately.
Every tactic has been validated on a live site with 960+ pages, 1,000+ indexed routes, and measurable results across both Google and AI citation channels.
Each chapter follows a consistent structure: the principle (why it matters, with data), the implementation (step-by-step technical detail), the prompt (copy-paste AI prompt to execute it), and the measurement (how to verify itβs working). Chapters are ordered by ROI β start at Chapter 1 and work down.
The single highest-ROI SEO tactic: start every page title with a specific number. Not a topic label. A concrete figure β a dollar amount, percentage, count, or multiplier. Analysis across hundreds of pages shows titles leading with a number achieve 2-3x higher click-through rates at the same average search position.
Googleβs SERP is a wall of blue links. A specific number (β$347Bβ) breaks pattern faster than any adjective. Specificity signals authority, authority earns clicks, higher CTR signals relevance, Google boosts position. Itβs a compounding flywheel.
| Before (Generic) | After (Numbers-First) | CTR Delta |
|---|---|---|
| Market Exit Dashboard 2026 | $347B in Q1 β Market Exit Window Dashboard | +2.9x |
| The Distribution Crisis Explained | 0.08x Returns β The Distribution Crisis | +3.1x |
| IPO Return Calculator | 302,667x β IPO Investor Return Calculator | +2.4x |
| Company Valuation Tracker | $965B Filing β Valuation Tracker | +1.8x |
Step 1: Pull candidates from GSC β Filter: position 4-20, 1,000+ impressions, CTR <2%
Step 2: For each candidate β Find the most compelling number in the content body
Step 3: Rewrite β Move number to position 1 in the title. Apply same treatment to meta description.
Step 4: Deploy + submit β Push changes, submit URLs to Google Indexing API
Step 5: Measure β Wait 14 days for re-crawl. Compare CTR at same position band.
You are an elite SEO title engineer. I'll give you a list of page titles with their current CTR and average position from Google Search Console. For each title, rewrite it following these rules: 1. Start with the most specific, surprising number from the content 2. Use dollar amounts ($347B), percentages (42%), multipliers (302,667x), or counts (14 tools) 3. Keep total length under 60 characters 4. The number should create curiosity or signal authority 5. Never use generic words like "guide", "ultimate", "complete" 6. Add a dash separator between the number hook and the topic Output format: | Original Title | New Title | Character Count | Hook Type ($/% /x/count) | Here are my titles and GSC data: [PASTE YOUR GSC EXPORT HERE]
Structured data is the bridge between traditional SEO and AEO. Google uses it for rich results. AI engines parse JSON-LD directly for citations. A well-instrumented site deploys all 7 types:
| Schema | Where | Benefit | Priority |
|---|---|---|---|
| FAQPage | Top 20-50 pages | Featured snippets + AI citations | P0 |
| Dataset | Data tools, dashboards | Google Dataset Search traffic | P0 |
| Article | All blog posts | E-E-A-T + rich results | P0 |
| Organization | Root layout (site-wide) | Knowledge Graph entity | P1 |
| WebSite | Root layout (site-wide) | Sitelinks search box | P1 |
| BreadcrumbList | All content pages | Breadcrumb rich results | P1 |
| CollectionPage | Category/archive pages | Hierarchy signals | P2 |
Apply to your top 20-50 highest-traffic pages. Critical implementation rules:
Apply to every data-heavy page, interactive tool, or dashboard. Google maintains a dedicated Dataset Search engine β a traffic channel 95% of competitors ignore entirely.
You are a structured data engineer. Generate JSON-LD schema for the following page. Page URL: [URL] Page title: [TITLE] Page type: [blog post / dashboard / tool / category page] Key stats mentioned: [LIST 3-5 NUMBERS FROM THE CONTENT] Author name: [NAME] Author social profiles: [TWITTER, LINKEDIN URLs] Generate ALL applicable schemas from this list: 1. FAQPage (3-5 Q&As, answers start with numbers, 50-90 words each) 2. Dataset (if data/tool page β include temporalCoverage and variableMeasured) 3. Article (if blog post β include author entity with sameAs) 4. BreadcrumbList (always) 5. Organization (if root layout) Output as a single script tag with an array of schemas. Validate each against Google's Rich Results Test requirements.
Traditional SEO optimizes for Googleβs ranking algorithm. AEO optimizes for Perplexity, ChatGPT, Claude, Gemini, and other AI tools that cite sources. The two are complementary β but their signals diverge:
Place a 2-3 sentence summary at the top of every page with the core answer and key numbers. AI engines extract this as a citable snippet. The formula: Answer (with number) β Context β Implication.
β$347B in exits in Q1 alone β more than all of the previous year combined. The exit window is wider than it has been since 2021, and late-stage companies are rushing to capitalize before rates shift again.β
AI engines prefer pages with high factual density. A paragraph with 5 data points gets cited 3-5x more often than a paragraph with 5 opinions. Minimum threshold: at least one specific, verifiable number per paragraph. At least one named entity per section.
You are an AI Engine Optimization specialist. Analyze this content and optimize it to maximize the probability of being cited by Perplexity, ChatGPT, and Claude. Content to optimize: [PASTE CONTENT HERE] Apply these transformations: 1. ADD a 2-3 sentence "quick answer" block at the very top with the core finding + key number 2. INCREASE factual density β add specific numbers, dates, $ amounts, or percentages to every paragraph that currently lacks them 3. RESTRUCTURE for extractability β break into clear H2/H3 sections where each section answers one specific question 4. ADD entity clarity β name the who/what behind every claim 5. CONVERT opinions to data-backed statements wherever possible 6. ADD a "Key Takeaways" bullet list (3-5 items, each starting with a number) Output the optimized content with [CHANGED] markers on every modified paragraph. Also output a "Factual Density Score" β count of specific numbers per 500 words, before and after.
Once a site exceeds ~100 pages, content hygiene becomes the #1 determinant of ranking trajectory. Stale, thin, and cannibalized pages actively suppress your best content.
| # | Dimension | Min Threshold | Weight |
|---|---|---|---|
| 1 | Word Count | 800+ words | 15% |
| 2 | Data Density | 3+ stats per 1K words | 15% |
| 3 | Internal Links Out | 1+ outbound internal | 10% |
| 4 | External Links | 1+ authoritative source | 10% |
| 5 | Schema Markup | Article schema min | 10% |
| 6 | Keyword Targeting | Title/H1 matches query | 15% |
| 7 | Freshness | Updated <6 months | 15% |
| 8 | Cannibalization | No duplicate targets | 10% |
Scores β₯6/8. High impressions. No cannibalization.
Strong topic, weak execution β thin, stale, or missing schema.
Two weak pages on the same topic. 301 the loser.
Thin, duplicate, or outdated beyond repair. 301 to strongest.
You are a content auditor. Score each page below against these 8 dimensions (1 = fail, 2 = marginal, 3 = pass): 1. Word Count (800+ = 3, 400-799 = 2, <400 = 1) 2. Data Density (3+ stats/1K words = 3, 1-2 = 2, 0 = 1) 3. Internal Links Out (2+ = 3, 1 = 2, 0 = 1) 4. External Links (2+ = 3, 1 = 2, 0 = 1) 5. Schema Markup (FAQPage+Article = 3, Article only = 2, none = 1) 6. Keyword Targeting (title matches query = 3, partial = 2, none = 1) 7. Freshness (updated <3mo = 3, 3-6mo = 2, >6mo = 1) 8. Cannibalization (unique target = 3, partial overlap = 2, direct duplicate = 1) For each page output: | URL | Total Score /24 | Action (Keep/Update/Merge/Kill) | Priority | Specific Fix | Sort by score ascending (worst first). Group merge candidates together. Pages to audit: [PASTE URL LIST WITH WORD COUNTS AND LAST-UPDATED DATES]
Internal links are the highest-leverage, lowest-effort way to boost pages already ranking. Two complementary systems:
Every link must be contextual β embedded in existing paragraph text where the topic is naturally mentioned. Never use bolted-on βRelated Postsβ widgets or footer link lists. Contextual links carry 5-10x more SEO weight than navigational links.
You are an internal linking specialist. I'll give you a blog post and a list of all pages on my site with their URLs and topics. Find every natural opportunity to add a contextual internal link. Rules: 1. Only link where the topic is NATURALLY mentioned β never force a link 2. Use descriptive anchor text (not "click here" or "read more") 3. Max 1 link per destination page per post 4. Max 5-8 total internal links per post 5. Prioritize linking to high-value pages (tools, dashboards, pillar content) 6. Never link the same anchor text to different destinations 7. Place links in the first mention of each topic Output the modified content with all new links in markdown format. Also output a summary: | Anchor Text | Destination URL | Paragraph # | Blog post content: [PASTE CONTENT] Site pages: [PASTE URL + TOPIC LIST]
Interactive applications built with JavaScript frameworks render client-side. Googleβs crawler has limited JS execution capability. The solution: iframe wrapper pages with server-rendered SEO content.
| Requirement | Detail |
|---|---|
| frame-ancestors CSP | Iframe source allows parent domain |
| Distinct <h2> | Different from <title> β gives Google 2 ranking hooks |
| Below-iframe word count | 150+ words (Google treats <120 as thin) |
| Stat cards | Each displays a specific number, not qualitative text |
| JSON-LD schemas | Dataset + FAQPage + BreadcrumbList minimum |
| Internal links | 3-5 contextual links to related content pages |
| OG image | 1200x630, page-specific, not a generic fallback |
| Category | Description | Example |
|---|---|---|
| Content merges | Loser 301s to canonical winner | /saas-guide β /saas-metrics |
| De-versioned slugs | Version numbers stripped | /grok-3-vs-claude β /grok-vs-claude |
| Thin kills | Recurring/thin β hub page | /weekly-42 β /market-dashboard |
| Duplicate fixes | Suffix variants consolidated | /topic-2026 β /topic |
| Tool consolidation | Old tool URLs β new pages | /old-calc β /calculator |
You are a URL hygiene specialist. I'll give you a list of URLs with their word counts, last update dates, and monthly impressions from GSC. Analyze and produce a redirect plan: 1. IDENTIFY pages to kill (thin <400 words, stale >6 months, <50 impressions) 2. IDENTIFY merge candidates (2+ pages targeting the same keyword) 3. IDENTIFY de-versioning opportunities (URLs containing version numbers) 4. For each redirect, specify the BEST destination URL (not homepage) 5. Flag any redirect chains that would result Output: | Source URL | Action | Destination URL | Reason | Impressions Lost | Sort by impressions descending. URL inventory: [PASTE URL LIST WITH METRICS]
Every page needs a 1200x630 Open Graph image. At 960+ pages, manual creation is impossible. The solution: build-time programmatic generation.
A production content engine requires daily and weekly automations. Manual processes break down past ~50 pages.
| Automation | Freq | Description | Tool |
|---|---|---|---|
| Content generation | Daily | AI-assisted: research β write β schema β deploy | Claude Code + cron |
| Internal link audit | Daily | Scan new posts for missing cross-links | Script + Indexing API |
| Dashboard data refresh | Weekly | Update time-sensitive data on dashboards | Vercel Remote Triggers |
| GSC performance pull | Biweekly | Extract search analytics, identify rewrite candidates | GSC API β script |
| Title rewrite cycle | Biweekly | Execute Ch. 1 workflow on top underperformers | Claude + GSC data |
| Indexing API submission | On publish | Submit new/updated URLs for faster crawling | Google Indexing API |
| Content audit | Monthly | Score all pages against 8-dimension framework | Automated + manual |
| Redirect chain audit | Quarterly | Flatten chains, remove broken redirects | Script or Screaming Frog |
| Priority | Metric | Target | Leading/Lagging |
|---|---|---|---|
| 1 | GSC Impressions | β week-over-week | Leading |
| 2 | CTR by Position | 3-5% at pos 5, >2% min | Leading |
| 3 | Indexed Pages | 100% of submitted | Leading |
| 4 | Core Web Vitals | LCP <2.5s, CLS <0.1 | Lagging |
| 5 | Rich Results | FAQ schemas firing | Lagging |
| 6 | AI Citations | Pages cited on Perplexity | Lagging |
Impressions are the #1 leading indicator. If Google is showing your pages, clicks follow. If impressions are flat, no title optimization will help β fix underlying content quality or indexing issues first.
AI citations are the newest and hardest-to-track metric. Search your domain on Perplexity weekly. Track which pages get cited and which donβt. This metric will compound in importance as AI search grows from ~5% to an estimated 20-30% of discovery by end of 2027.
You are a search performance analyst. I'll give you a GSC data export with columns: Page, Clicks, Impressions, CTR, Position. Analyze and produce: 1. TOP OPPORTUNITIES β Pages with high impressions but CTR <2% (title rewrite candidates) 2. QUICK WINS β Pages at position 4-10 that could reach top 3 with content updates 3. CANNIBALIZATION β Multiple pages ranking for same or similar queries 4. DECLINING PAGES β Pages where position worsened >3 spots vs prior period 5. ZERO-CLICK PAGES β Pages with impressions but 0 clicks For each finding: | Page URL | Issue | Current Metrics | Recommended Action | Expected Impact | Sort by expected impact. Flag the top 5 actions for this week. GSC Data: [PASTE GSC EXPORT]
Production-ready prompts you can copy-paste directly into Claude, ChatGPT, or any AI tool. Each has been tested and refined on a live site.
Write SEO meta descriptions for these pages. Rules:
- Start with the most surprising number or stat from the page
- 150-155 characters max (Google truncates at 155)
- Include a clear value proposition (what the reader gets)
- End with implicit CTA ("see the data", "explore", "compare")
- Never use: ultimate, comprehensive, definitive, guide
Pages:
[PASTE TITLES + BRIEF CONTENT SUMMARIES]Read this content and generate FAQPage JSON-LD schema. Rules: - Extract 3-5 questions that real users would search for on Google - Validate questions against Google autocomplete - Every answer MUST start with a specific number - Answers: 50-90 words each, at least 1 data point per answer - Output valid JSON-LD ready to paste into a script tag Content: [PASTE CONTENT]
Optimize this blog post for both Google SEO and AI Engine Optimization. Apply ALL: SEO Layer: 1. Rewrite title: numbers-first, under 60 chars 2. Rewrite meta description: stat-first, 150-155 chars 3. Add H2/H3 structure if missing (one question per section) 4. Ensure 800+ word count β expand thin sections with data 5. Add 3-5 internal link opportunities (mark with [LINK: /suggested-url]) AEO Layer: 6. Add quick-answer block at top (2-3 sentences, lead with number) 7. Increase factual density to 3+ stats per 500 words 8. Add "Key Takeaways" section (3-5 bullets, each starts with a number) 9. Ensure every claim is attributable Schema Layer: 10. Generate FAQPage JSON-LD (3-5 Qs) 11. Generate Article JSON-LD with author entity 12. Generate BreadcrumbList JSON-LD Output full optimized post + all 3 schema blocks. Score before/after: word count, data density, internal links, schema coverage. Original post: [PASTE POST]
I run a site about [TOPIC]. Here are my top 20 pages by traffic: [PASTE URL + TITLE LIST] And here are the top 20 pages from my competitor: [PASTE COMPETITOR URL + TITLE LIST] Find: 1. GAPS β Topics my competitor covers that I don't 2. OVERLAPS β Topics we both cover where I can improve 3. ANGLE GAPS β Topics I cover from a weaker angle 4. OPPORTUNITY SCORE β Rate each gap 1-10 (search volume + ease) Output a prioritized content calendar: | Week | Topic | Type (new/update) | Target Keyword | Angle | Opportunity Score |
These pages on my site are cannibalizing each other: [PASTE: pairs/groups of URLs with target keywords and GSC metrics] For each cannibalization group: 1. Pick the WINNER (highest authority, best content, strongest URL) 2. Define what happens to the LOSER(s): merge content or 301 redirect 3. If merging: specify which sections to incorporate 4. Write the 301 redirect rule 5. List all internal links that need updating Output a step-by-step execution plan.
| Layer | Tool | Why This Specifically |
|---|---|---|
| Framework | Next.js (App Router) | SSR by default β indexable. Static generation for speed. |
| Language | TypeScript | Type safety across 100s of components prevents schema drift. |
| Styling | Tailwind CSS | Utility-first = consistent design without CSS bloat. |
| Charts | Recharts | React-native, responsive, SSR-compatible. |
| Hosting | Vercel | Zero-config deploys, edge CDN, serverless functions. |
| AI Tooling | Claude Code | End-to-end: research β write β code β schema β deploy. |
| SEO Data | Google Search Console API | The authoritative source for impressions, CTR, position. |
| Social | Buffer | Multi-platform scheduling with API. |
| OG Images | satori / @vercel/og | HTML β SVG β PNG at build time. No headless browser. |
| Indexing | Google Indexing API | Instant URL submission. Cuts crawl delay to hours. |
| Monitoring | Vercel Analytics + GSC | Real-time + weekly trends. |
| Week | Focus | Actions | Deliverable |
|---|---|---|---|
| 1 | Foundation | Install JSON-LD schemas. Set up GSC API access. | All schemas validated in Rich Results Test |
| 2 | Quick Wins | Quick-answer blocks on top 20 pages. Rewrite top 20 titles. | 20 pages optimized, submitted to Indexing API |
| 3 | Content Audit | Run full 8-dimension audit. Execute kills + merges with 301s. | Audit spreadsheet + redirect map deployed |
| 4 | Automation | Set up biweekly GSC rewrite workflow + daily link sweep. | 2 automations running |
| 5 | AEO | Add Dataset schema. Build iframe wrappers for interactive tools. | Dataset Search visibility + tools indexed |
| 6 | Scale | Launch daily content generation pipeline. OG image auto-generation. | Content engine running daily |
| 7+ | Optimize | Measure with 6-metric framework. Iterate. Expand schema coverage. | Dashboard tracking all 6 metrics |
| Term | Definition |
|---|---|
| 301 Redirect | Permanent HTTP redirect passing ~95% of link equity. Required when killing, merging, or renaming pages. |
| AEO | AI Engine Optimization. Optimizing for citation by AI search tools vs. Google ranking. |
| Cannibalization | When 2+ pages on the same site target the same keyword, splitting signals. |
| Content Audit | Systematic review scoring every page against quality dimensions β kill, merge, update, or keep. |
| Core Web Vitals | Google's UX metrics: LCP (loading), CLS (stability), INP (interactivity). Ranking signal since 2021. |
| CTR | Click-Through Rate. Clicks Γ· impressions. The primary signal for title effectiveness. |
| Dataset Schema | JSON-LD type for data pages. Surfaces in Google Dataset Search β an underused traffic channel. |
| De-Versioning | Removing version numbers from content and URLs to keep them evergreen. |
| E-E-A-T | Experience, Expertise, Authoritativeness, Trustworthiness. Google's quality framework. |
| Entity Clarity | Making every claim on a page attributable to a specific source, person, or organization. |
| Factual Density | Ratio of specific, verifiable data points to total word count. Higher = more AI citations. |
| FAQPage Schema | JSON-LD marking up Q&A content. Enables FAQ rich results + AI citation extraction. |
| GSC | Google Search Console. Primary tool for search performance, indexing status, and crawl health. |
| Iframe Wrapper | Server-rendered page embedding a client-rendered app. SEO content wraps non-indexable tools. |
| JSON-LD | JavaScript Object Notation for Linked Data. Google's preferred structured data format. |
| LCP | Largest Contentful Paint. Core Web Vital measuring loading speed. Target: <2.5s. |
| Link Equity | SEO value flowing through hyperlinks. 301 redirects preserve ~95%. Each chain hop loses ~10%. |
| OG Image | Open Graph image (1200Γ630). Displayed when a URL is shared on social platforms. |
| Quick Answer | Concise 2-3 sentence summary at page top, optimized for AI citations and featured snippets. |
| Rich Results | Enhanced SERP results with visual elements beyond the standard blue link. |
| SERP | Search Engine Results Page. |
| Sitemap | XML file listing all URLs, submitted to search engines for discovery. |
| Thin Content | Pages with insufficient depth (<400 words). Active ranking suppressor. |
Start with Chapter 1 (title rewrites) β itβs the highest ROI, lowest effort change you can make today. Then work through the Quick-Start Roadmap one week at a time. The compounding effect of all 14 tactics running together is what produces 3x CTR lifts, 1,000+ indexed routes, and consistent AI citations.
Co-Founder & GP, Six Point Ventures
3x founder, 65+ angel investments, 15 years in New York tech. Built ValueAddVC.com as a research platform for private-company data β then used AI to scale it from a side project to 2.74M monthly impressions.