GEO in 2025: What Actually Gets Your Content Cited by AI
TL;DR: AI search has changed. Server-side JSON-LD is now critical (AI crawlers can't execute JavaScript). Content with H2→H3→bullet structure gets cited 40% more often. Perplexity rewards updates every 2-3 days. And your first 60 words need to answer the question directly. These aren't guesses—they're patterns from the latest research.
Everyone's still optimizing for 2023. Adding FAQ sections. Sprinkling in some schema markup. Hoping for the best.
That playbook is outdated.
AI search engines have gotten smarter about what they cite. And the tactics that worked two years ago are leaving citations on the table. We dug through the latest research on GEO (Generative Engine Optimization) to find what actually moves the needle in 2025.
The Invisible JSON-LD Problem
Here's something most sites get wrong: AI crawlers cannot execute JavaScript.
GPTBot, ClaudeBot, PerplexityBot—none of them run your client-side code. If your JSON-LD schema is injected via React, Vue, or any SPA framework, those crawlers see nothing. Your beautiful structured data is invisible.
This is a bigger deal than it sounds. You could have perfect schema markup, and it might as well not exist for AI search purposes.
The fix: Move JSON-LD to server-side rendering. If you're on Next.js, that means using generateMetadata or placing scripts in your layout. If you're on a traditional CMS, you're probably fine. But if you're running a SPA—check your page source, not the rendered DOM.
Quick test: View your page source (not inspect element). Search for application/ld+json. If you don't see your schema in the raw HTML, AI crawlers don't see it either.
The 40% Citation Boost You're Missing
Content structure matters more than content length. Specifically, pages with H2→H3→bullet list hierarchies get cited roughly 40% more often than flat content.
Why? AI systems extract information in chunks. When your content has clear visual hierarchy, it's easier to pull a specific answer. A wall of text under a single H2 is harder to cite than broken-down sections with scannable lists.
What this looks like in practice:
## How to Configure X (H2)
### Step 1: Install Dependencies (H3)
- Run `npm install package-name`
- Verify installation with `npm list`
- Check version compatibility
### Step 2: Update Configuration (H3)
- Open `config.js`
- Add the following settings...
Each section becomes a citable unit. The H3 subheadings give AI systems anchor points. The bullet lists are scannable and quotable.
Compare that to:
## How to Configure X
To configure X, you'll first need to install the dependencies. Run npm install package-name and then verify the installation. After that, open your config file and add the necessary settings...
Same information. Harder to extract. Less likely to get cited.
First 60 Words: Answer First, Context Later
AI systems are looking for direct answers. If your first paragraph is throat-clearing ("In today's rapidly evolving landscape of digital transformation..."), you've already lost.
The first 40-60 words of your content should contain a direct answer to the question your page addresses.
Patterns that work:
- Start with a definition: "X is a method for..."
- Lead with the answer: "Yes, you can do X, but only if..."
- Open with a number: "The average cost is $X..."
- Be direct: "To fix this error, update your..."
Patterns that don't:
- "In this article, we'll explore..."
- "Have you ever wondered why..."
- "Understanding X is crucial for..."
This doesn't mean your content can't have nuance. It means front-load the answer, then provide context. AI can cite the direct answer. It can't cite your philosophical musings about the importance of the topic.
The Freshness Factor
Perplexity, in particular, has a strong recency bias. Content updated in the last 2-3 days gets preferential treatment for time-sensitive queries.
This doesn't mean you need to rewrite everything constantly. It means:
- Add
dateModifiedto your schema. If you update content, reflect that in your structured data. - Actually update high-value pages. Even small refreshes—new stats, updated links, additional context—signal freshness.
- Don't let cornerstone content go stale. That comprehensive guide you wrote in 2022? If it hasn't been touched since, AI systems notice.
The freshness signal is strongest for queries where recency matters ("best tools for X in 2025"). For evergreen topics, it matters less. But adding accurate modification dates never hurts.
Fact Density: Stats Per 200 Words
AI systems prefer content with specific, citable facts. Research suggests roughly one statistic or data point per 200 words is the sweet spot.
Not just any numbers. Context matters:
- Good: "Companies using X see a 23% reduction in churn"
- Weak: "Many companies have seen improvements"
The specificity makes content more citable. "Source says 23% reduction" is a stronger citation than "source suggests improvements are possible."
You don't need to manufacture statistics. But when you have them, use them. And when you're making claims, back them up with specifics.
E-E-A-T Signals: When They Matter
Not every page needs an author bio. Landing pages don't have authors. Product pages don't have authors. Stop forcing bylines where they don't belong.
But for content that should have E-E-A-T signals—articles, guides, how-tos—the signals matter:
- Author name isn't enough. AI systems look for author bios with credentials or context.
- Expertise should be visible. "Written by John" means nothing. "Written by John, 10-year DevOps engineer" means something.
- Link to author pages. A dedicated author page with other articles builds authority.
The key insight: E-E-A-T signals are context-dependent. Don't add them everywhere. Add them where they make sense, and make them substantive when you do.
What We Built
These research findings informed our latest GEO Audit updates. The tool now checks for:
- JSON-LD server rendering - Are AI crawlers actually seeing your schema?
- Content freshness - How old is your content, and does it show modification dates?
- Heading depth - Do you have H2→H3 structure, or is everything flat?
- Scannable lists - Does your content include bullet points and numbered steps?
- Direct answers - Does your first paragraph actually answer the question?
- Fact density - Are you backing claims with specific data?
It's one thing to know these factors matter. It's another to audit your content at scale. That's what the tool does.
Quick Wins
If you're looking to improve AI citations today:
-
Check your JSON-LD rendering. View page source, search for
application/ld+json. If it's not there, fix your SSR. -
Add subheadings. Break up long sections with H3s. One concept per subsection.
-
Convert paragraphs to lists. Where you have "First do X, then do Y, finally do Z," make it a numbered list.
-
Front-load answers. Rewrite your intros to lead with the answer, not the context.
-
Add modification dates. If you've updated content, say so in your schema.
None of these are difficult. Most sites just haven't done them.
Frequently Asked Questions
Does JSON-LD need to be server-rendered for Google too?
Google can execute JavaScript, so client-side JSON-LD works for traditional search. But for AI crawlers (GPTBot, ClaudeBot, PerplexityBot), server-side is required. If you want both, go server-side—it works for everyone.
How often should I update content for freshness signals?
Depends on the topic. For time-sensitive content ("best tools for 2025"), frequent updates help. For evergreen content, updates when information changes is enough. The key is having accurate dateModified values, not arbitrary rewrites.
Is there such a thing as too many bullet lists?
Yes. If everything is a bullet list, nothing stands out. Use lists for steps, features, comparisons—content that's inherently list-like. Prose is still fine for explanations and context.
Do these tactics work for Claude and Perplexity, or just ChatGPT?
The underlying principles apply across AI systems. All of them struggle with client-side rendering. All of them prefer structured content. Perplexity has the strongest recency bias. But none of these tactics will hurt your visibility on any platform.
What's the difference between GEO and AEO?
They're different names for similar concepts. GEO (Generative Engine Optimization) focuses on optimizing for AI-generated responses. AEO (Answer Engine Optimization) focuses on being cited as an answer source. In practice, the tactics overlap heavily.
Want to see how your content scores on these factors? Try the GEO Audit tool to analyze your pages for AI search readiness.
Related Articles
Is AIO, AEO, LLMO, GEO Different from SEO? Yes, It Really Is
Why optimizing for AI search is fundamentally different from traditional SEO, and what industry leaders are saying about the shift to Answer Engine Optimization.
How ChatGPT Citations Work: A Complete Guide
Learn how ChatGPT cites sources in its responses, why your content might not be showing up, and what you can do to improve your visibility in AI search results.
ChatGPT Sources vs Citations: What's the Difference?
ChatGPT shows both Sources and Citations in search results. Gemini only shows Citations. Understanding the difference matters for tracking your AI visibility.