Lily Ray Is Right About the SEO Foundation. Here Is What the GEO Stack Adds.

SEO is the foundation, GEO is what happens next — response to Lily Ray on AI search optimisation
{ “@context”: “https://schema.org”, “@type”: “Article”, “headline”: “Lily Ray Is Right About the SEO Foundation. Here Is What the GEO Stack Adds.”, “description”: “Lily Ray’s March 2026 piece argues GEO tactics can destroy SEO. She’s right about the foundation. But SEO ranking a page and AI systems retrieving a passage are two different operations — and Experiment 001 proves it.”, “author”: { “@type”: “Person”, “name”: “Artur Ferreira”, “url”: “https://thegeolab.net/about/” }, “publisher”: { “@type”: “Organization”, “@id”: “https://thegeolab.net/#organization”, “name”: “The GEO Lab”, “url”: “https://thegeolab.net” }, “datePublished”: “2026-03-27”, “dateModified”: “2026-03-27”, “mainEntityOfPage”: { “@type”: “WebPage”, “@id”: “https://thegeolab.net/geo-strategy-seo-foundation/” } } { “@context”: “https://schema.org”, “@type”: “Organization”, “@id”: “https://thegeolab.net/#organization”, “name”: “The GEO Lab”, “url”: “https://thegeolab.net”, “sameAs”: [ “https://x.com/TheGEO_Lab”, “https://www.linkedin.com/in/arturgeo” ] } body { font-family: Georgia, ‘Times New Roman’, serif; font-size: 18px; line-height: 1.8; color: #1a1a1a; max-width: 780px; margin: 0 auto; padding: 2rem 1.5rem 5rem; background: #fff; } h2 { font-size: 1.45rem; margin-top: 3rem; margin-bottom: 0.75rem; border-bottom: 2px solid #ececec; padding-bottom: 0.4rem; font-weight: 700; } h3 { font-size: 1.1rem; margin-top: 2rem; margin-bottom: 0.5rem; font-weight: 700; } p { margin: 0 0 1.25rem; } ul, ol { margin: 0 0 1.25rem 1.6rem; } li { margin-bottom: 0.6rem; } strong { font-weight: 700; } em { font-style: italic; } code { font-family: ‘Courier New’, monospace; font-size: 0.88em; background: #f0f0f0; padding: 0.1em 0.35em; border-radius: 3px; color: #c0392b; } .byline { color: #555; font-size: 0.9rem; margin-bottom: 0.3rem; font-family: -apple-system, sans-serif; } .subtitle { font-size: 1.05rem; color: #444; font-style: italic; margin-bottom: 2rem; margin-top: 0.5rem; } .definition-block { background: #f5f5f5; border-left: 5px solid #111; padding: 1.25rem 1.6rem; margin: 2rem 0; border-radius: 0 6px 6px 0; } .definition-block p { margin: 0 0 0.5rem; } .definition-block p:last-child { margin: 0; } .definition-block .label { font-family: -apple-system, sans-serif; font-size: 0.78rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #666; margin-bottom: 0.5rem; display: block; } .callout { background: #fffbf0; border-left: 5px solid #d4a012; padding: 1.1rem 1.5rem; margin: 2rem 0; border-radius: 0 6px 6px 0; } .callout.blue { background: #f0f4ff; border-left-color: #2E75B6; } .callout.red { background: #fff5f5; border-left-color: #c0392b; } .callout p { margin: 0 0 0.5rem; } .callout p:last-child { margin: 0; } .geolab-toc { background: #f8f8f8; border: 1px solid #e0e0e0; border-radius: 8px; padding: 1.1rem 1.4rem; margin: 1.75rem 0 2rem; font-family: -apple-system, sans-serif; font-size: 0.9rem; } .geolab-toc .toc-label { font-size: 0.75rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.07em; color: #888; margin-bottom: 0.6rem; display: block; } .geolab-toc ol { margin: 0; padding-left: 1.3rem; } .geolab-toc li { margin-bottom: 0.3rem; } .geolab-toc a { color: #2E75B6; text-decoration: none; } .geolab-toc a:hover { text-decoration: underline; } .stat-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 1rem; margin: 1.5rem 0 2rem; } .stat-card { border: 1px solid #e0e0e0; border-radius: 8px; padding: 1rem 1.1rem; text-align: center; font-family: -apple-system, sans-serif; } .stat-card .stat-number { font-size: 2rem; font-weight: 800; color: #111; line-height: 1.1; display: block; margin-bottom: 0.3rem; } .stat-card .stat-number.positive { color: #1D9E75; } .stat-card .stat-number.highlight { color: #534AB7; } .stat-card .stat-desc { font-size: 0.82rem; color: #666; line-height: 1.4; } .stat-card .stat-source { font-size: 0.72rem; color: #aaa; margin-top: 0.3rem; display: block; } table { width: 100%; border-collapse: collapse; margin: 1.5rem 0 2rem; font-family: -apple-system, sans-serif; font-size: 0.9rem; } thead th { padding: 0.7rem 1rem; text-align: left; font-weight: 700; font-size: 0.82rem; background: #111; color: #fff; } thead th:first-child { border-radius: 6px 0 0 0; } thead th:last-child { border-radius: 0 6px 0 0; } tbody td { padding: 0.65rem 1rem; border-bottom: 1px solid #efefef; vertical-align: top; line-height: 1.5; } tbody td:first-child { font-weight: 700; color: #555; } tbody tr:last-child td { border-bottom: none; } tbody tr:nth-child(even) td { background: #f8f8f8; } .key-takeaway { background: #111; color: #fff; padding: 1.5rem 1.75rem; border-radius: 8px; margin: 2.5rem 0; font-family: -apple-system, sans-serif; } .kt-label { font-size: 0.72rem; font-weight: 700; text-transform: uppercase; letter-spacing: 0.1em; color: #d4a012; margin-bottom: 0.75rem; display: block; } .key-takeaway p { margin: 0 0 0.6rem; color: #f0f0f0; font-size: 0.97rem; line-height: 1.65; } .key-takeaway p:last-child { margin: 0; } .testimonial-card { background: #f8fafc; border-left: 4px solid #2E75B6; padding: 1.25rem 1.5rem; margin: 1rem 0; border-radius: 0 4px 4px 0; font-family: -apple-system, sans-serif; } .testimonial-card p { margin: 0 0 0.5rem; font-style: italic; font-size: 0.95rem; } .testimonial-card .attribution { font-size: 0.85rem; color: #666; margin: 0; font-style: normal; } figure { margin: 2rem 0; text-align: center; } figcaption { font-family: -apple-system, sans-serif; font-size: 0.82rem; color: #888; margin-top: 0.6rem; font-style: italic; } .faq-item { margin-bottom: 1.75rem; } .faq-item h3 { margin-bottom: 0.5rem; } .meta-section { font-family: -apple-system, sans-serif; font-size: 0.88rem; color: #555; border-top: 1px solid #e0e0e0; padding-top: 1.5rem; margin-top: 3rem; } .meta-section h2 { font-size: 1rem; font-family: -apple-system, sans-serif; border: none; margin-top: 1.5rem; padding: 0; color: #333; } .meta-section ul { margin-left: 1.2rem; } .meta-section li { margin-bottom: 0.3rem; } .author-bio { background: #f8f8f8; border-radius: 8px; padding: 1.25rem 1.5rem; margin-top: 2.5rem; font-family: -apple-system, sans-serif; font-size: 0.9rem; color: #444; } .author-bio p { margin: 0 0 0.5rem; } .author-bio p:last-child { margin: 0; } @media (max-width: 580px) { body { font-size: 17px; } .stat-grid { grid-template-columns: 1fr 1fr; } }
Lily Ray Is Right About the SEO Foundation. Here Is What the GEO Stack Adds.

She’s right that GEO without SEO is optimising for a pool you’re not in. What her piece doesn’t address is what happens to content that is already in the pool — and why SEO rankings alone don’t determine whether it gets retrieved.

TL;DR

Lily Ray published a March 2026 piece arguing that GEO tactics can destroy SEO — and she’s right about several of them. Scaled AI content, artificial freshening, and self-promotional listicles are manipulation tactics with a documented crash pattern. But the piece conflates those tactics with GEO as a discipline. Legitimate GEO optimisation — declarative sentence structure, topical isolation, entity naming at section level — is not a manipulation tactic. It’s a quality signal. And it produces measurable effects that SEO ranking cannot explain. As of March 2026, Experiment 001 at The GEO Lab measured a 24 percentage point citation rate gap between declarative and narrative structure on pages with identical content and identical domain signals. SEO gets content into the candidate pool. Structure determines whether it is retrieved from that pool. Both matter. Neither replaces the other.

Where Lily Ray Is Right — and the GEO Stack Already Agrees

I read Lily Ray’s Substack piece on the morning it came out. My first reaction was somewhere between recognition and mild irritation — not because she was wrong, but because I had written essentially the same warning into the GEO Stack framework months earlier, without saying it loudly enough for anyone to notice.

Her core argument is correct. Every major AI search product — ChatGPT, Perplexity, Gemini, Google AI Overviews — retrieves content from external search indexes before generating a response. If your content is not indexed and ranking, it cannot enter the model’s context window. Multiple independent studies, including Semrush’s analysis and Backlinko’s controlled tests, suggest ChatGPT relies heavily on Google’s index via SerpAPI. Google’s own AI products are built directly on top of Google’s index. The implication is direct: undermine your organic rankings and you undermine your AI search visibility, because the same index feeds both.

This is not a critique of the GEO Stack. The GEO Stack has a Stage 0 gate — candidate pool eligibility — that precedes all five layers. The gate says: a page must rank in the top 20–30 organic results for its target query before any GEO Stack intervention produces improvement. If a page is not in that window, Layers 1–5 produce zero improvement. Not marginal improvement. Zero. The GEO Stack overview page has documented this since February 2026.

So on the foundational point — SEO is the prerequisite — Lily Ray and the GEO Stack are in complete agreement. The disagreement is about what happens after that prerequisite is met.

The Conflation Problem: Manipulation Tactics Are Not GEO

The five tactics Lily Ray flags — scaled AI content, artificial freshening, self-promotional listicles, and two others — are real problems with a documented crash pattern. She shows Ahrefs traffic charts for roughly 30 sites that hit case study peaks followed by algorithmic collapses. The pattern is clear. She’s right to warn against it.

Going deeper on GEO methodology? The GEO Pocket Guide covers the full 30-check citation rate protocol, section-level audit checklist, and the complete GEO Stack framework — free to download.

But none of those five tactics are GEO tactics. They are SEO manipulation tactics that have been rebranded with a GEO label by practitioners who arrived recently and reached for the new terminology. Scaled AI content is not a GEO recommendation anywhere in The GEO Lab’s framework — it is explicitly banned. Artificial freshening is documented in POST_AUDIT_RULES.md as a forbidden practice: updates must add real information, not cosmetic rephrasing to justify a timestamp change. Self-promotional listicles do not appear in any GEO Stack documentation as a recommended format.

The distinction matters: Lily Ray is right that those tactics will eventually collapse. The error is conflating them with the discipline. Criticising GEO because some practitioners misuse the label is like criticising SEO because some practitioners built link farms. The manipulation is not the discipline. The discipline is what you do instead.

What the GEO Stack actually recommends: declarative sentence structure at section level, explicit entity naming per paragraph, topical isolation per H2 section, verifiable statistics from named sources, and context-complete chunk writing. These make content genuinely clearer — for human readers and for AI retrieval systems. They cannot be “caught” and penalised by an algorithm because they are not tricks. They are quality signals. A page that opens every section with a direct declarative answer is a better page. A section that can be understood without reading the surrounding context is a better section. An entity that is named explicitly every time it appears is less ambiguous to both humans and machines.

SEO and the GEO Stack Optimise for Different Operations

The piece argues that GEO is largely a rebranding of existing SEO approaches. In some practitioners’ hands, that criticism is fair. In the GEO Stack framework, it is not — because the optimisation unit is structurally different.

Dimension SEO GEO Stack
Optimisation unit Entire pages Individual H2 sections
Primary goal Position in ranked list Retrieval from passage pool
Key signals Backlinks, domain authority, keyword density Declarative structure, entity clarity, topical isolation
Success metric Organic rank and CTR Citation rate across AI platforms
Failure mode Page not in top 30 results Section not retrievable from pool even when page is in top 30
Relationship Prerequisite (Stage 0 gate) Layer 1–5 optimisation for content already in pool

SEO ranks pages. AI systems retrieve sections. Those are different operations. A page that ranks in position 3 provides a large candidate pool of sections for the retrieval system to choose from. Which sections get retrieved depends on how they are structured at the passage level — whether the opening sentence answers the query directly, whether the section is self-contained, whether the primary entity is named explicitly. None of that is determined by the page’s domain authority or backlink profile.

STAGE 0 — PREREQUISITE Candidate Pool Organic top 20–30 results Determined by: SEO Domain authority, backlinks, keyword relevance if in pool GEO STACK — LAYERS 1–5 L1 Retrieval Prob. L2 Extracta- bility L3 Entity Reinf. L4 Structural Authority L5 System Memory Applied only to content already in the candidate pool SEO determines eligibility
The two-stage pipeline. Stage 0 (candidate pool eligibility) is determined by organic ranking — this is SEO. Layers 1–5 of the GEO Stack apply only to content that has already earned candidate pool eligibility. Both stages are necessary. Neither replaces the other.

Experiment 001 and the Gap That SEO Cannot Explain

This is where I stop agreeing with the framing and start presenting data.

In January 2026, I ran a controlled experiment at The GEO Lab — Experiment 001 — testing whether sentence structure at the section level affects citation rate on Perplexity. Two versions of the same content. Same domain. Same entity naming. Same topic. Same internal link structure. Same publication date. The only variable was whether each H2 section opened with a declarative answer sentence (the direct claim first) or a narrative setup sentence (context before the claim).

I measured citation rate across 75 query iterations on Perplexity.

61% Citation rate — declarative structure The GEO Lab, Experiment 001, Jan 2026
37% Citation rate — narrative structure The GEO Lab, Experiment 001, Jan 2026
+24pp Gap from structure alone Identical content, identical domain signals

Twenty-four percentage points. From sentence structure alone. On pages with identical SEO signals. The two pages ranked identically for their target queries. The domain authority was the same for both. The backlink profile was the same. The only difference was whether the opening sentence of each section stated the answer directly or built up to it.

This is what SEO cannot explain. Google’s ranking algorithm evaluates pages. The GEO Stack’s Retrieval Probability layer addresses what happens when the retrieval system evaluates individual sections within a page that has already ranked. Those are different evaluation events with different signals. A page that ranks in position 3 sends a large pool of sections into the candidate pool. Which sections get retrieved from that pool depends on their structure — whether the opening sentence is declarative, whether the section is topically isolated, whether the primary entity is named explicitly. The Princeton 2024 GEO study found structural optimisation improved generative search visibility by 22–40%. Experiment 001 measured 24pp from that single variable alone.

As of March 2026, I have not found a way to explain this gap using purely SEO concepts. Ranking is a prerequisite. It is not sufficient.

What the GEO Stack Says About SEO as a Foundation

The GEO Stack has a sequential dependency that is worth stating explicitly, because the Lily Ray piece highlights how often it is ignored by practitioners who jump straight to passage-level optimisation:

Layer 0 — SEO foundation: Organic ranking in top 20–30 for target queries. Without this, stop. Nothing else matters. The retrieval pool is populated from organic search results. You cannot be retrieved from a pool you are not in.

Layer 1 — Retrieval Probability: Given that the page is in the pool, which sections get retrieved? Determined by heading clarity, opening sentence structure, and semantic alignment with the query at section level.

Layer 2 — Extractability: Given that a section is retrieved, can it be cleanly parsed and attributed? Determined by context completeness, pronoun resolution, and declarative sentence construction.

Layers 3–5: Entity reinforcement, structural authority, and system memory — compounds over time as the site establishes a consistent topical footprint.

The GEO Stack is not a replacement for SEO. It is what you apply after SEO has done its job. Lily Ray’s critique applies to practitioners who skip Layer 0 and jump to Layers 1–5 on pages that have no candidate pool eligibility. That is a real problem. The fix is to make Layer 0 explicit — which the GEO Stack framework now does — not to treat all passage-level optimisation as manipulation.

The distinction that matters for any practitioner reading both pieces: the question is not “SEO or GEO?” The question is “Has Layer 0 been established? If yes, what does passage-level optimisation add on top?” Experiment 001 answers that second question with a number: 24 percentage points.

What Practitioners Say

“The Stage 0 prerequisite framing resolves a genuine source of confusion in the field. Every GEO conversation I’ve had that went sideways was because someone was applying passage-level optimisation to pages that weren’t ranking. The two-stage model — SEO earns pool eligibility, GEO determines retrieval within the pool — is the clearest framing I’ve seen for why both disciplines are necessary and neither is sufficient alone.”

— Daniel Cardoso, Head of Content Strategy, SaaSMetrics.io

“The 24pp gap from Experiment 001 is the data point this debate needed. It’s not a claim that GEO replaces SEO. It’s a demonstration that two pages with identical rankings can have a 24-point citation rate spread based on sentence structure alone. That’s the thing the Lily Ray piece doesn’t address — because it’s the thing that SEO concepts don’t have a framework for yet.”

— Marco Silva, Technical SEO Lead, VisibilityStack

Frequently Asked Questions

Does GEO strategy destroy SEO performance?

The tactics that destroy SEO — scaled AI content, artificial freshening, self-promotional listicles — are manipulation tactics rebranded with a GEO label, not GEO tactics in the GEO Stack framework. Legitimate GEO optimisation (declarative section structure, explicit entity naming, topical isolation) improves content quality for both humans and AI retrieval systems. It cannot be penalised by an algorithm because it is a quality signal, not a trick.

Is SEO a prerequisite for GEO?

Yes, explicitly. The GEO Stack’s Stage 0 gate requires that a page ranks in the top 20–30 organic results for its target query before any GEO Stack intervention has an effect. AI retrieval systems pull from a pool of top-ranking pages. If a page is not in that pool, passage-level optimisation produces zero improvement because the page is never considered. SEO earns pool eligibility. GEO determines what happens to content already in the pool.

Can a page rank in Google but still have a zero AI citation rate?

Yes — and Experiment 001 at The GEO Lab measured this directly. Two versions of identical content, same domain signals, same rankings. The declarative version was cited 61% of the time on Perplexity. The narrative version was cited 37% of the time. A 24 percentage point gap from sentence structure alone. Ranking gets content into the candidate pool. Section-level structure determines whether it is retrieved from that pool.

What is the Stage 0 prerequisite in the GEO Stack?

Stage 0 is the candidate pool eligibility gate that precedes all five GEO Stack layers. AI retrieval systems pull from approximately the top 20–30 organic results for each query. A page not ranking in that window is not in the retrieval candidate pool. Stage 0 is an SEO prerequisite, not a GEO intervention. The GEO Stack is applied only after Stage 0 is satisfied.

What is the difference between SEO and GEO as disciplines?

SEO optimises entire pages for position in a ranked document list. GEO optimises individual content sections for retrieval from a passage pool within pages that are already ranked. SEO primary signals: domain authority, backlinks, keyword relevance. GEO primary signals: declarative structure, entity naming consistency, topical isolation at section level. The optimisation unit is different. The measurement target is different. Both are necessary for AI search visibility. Neither replaces the other.

Key GEO Lab Takeaway

Lily Ray is right that GEO without SEO is optimising for a pool you’re not in. The GEO Stack’s Stage 0 gate says the same thing and has since February 2026. Practitioners who apply passage-level optimisation to unranked pages are making a real mistake.

What the piece doesn’t address: Experiment 001 measured a 24 percentage point citation rate gap between declarative and narrative structure on pages with identical domain signals and identical organic rankings. Ranking gets content into the candidate pool. Structure determines whether it is retrieved. Those are different operations requiring different optimisation.

The practical rule as of March 2026: establish SEO foundation first. Verify Stage 0 — top 20–30 ranking for target queries. Then apply the GEO Stack. In that order. Never skipping Stage 0. Never treating GEO as a replacement for the foundation. But also: never treating “SEO is the foundation” as a reason to ignore what happens at the passage level once the foundation is in place.

Want to measure your own Stage 0 eligibility and passage-level citation rate? The AI Visibility Diagnostics Console runs the 30-check protocol across Perplexity, ChatGPT, and Google AI Overviews — establishing citation rate baselines across all three platforms in under 10 minutes.

Questions about this post or the GEO Stack framework? Contact The GEO Lab.

About the author: Artur Ferreira is the founder of The GEO Lab with over 20 years (since 2004) of experience in SEO and organic growth strategy. He developed the GEO Stack framework and leads research into Generative Engine Optimisation methodologies. Connect on X/Twitter or LinkedIn.

Have questions? Contact The GEO Lab

Related

External References

Version History

  • Version 1.0 — 27 March 2026: Initial publication. Response to Lily Ray’s March 2026 Substack piece on GEO tactics and SEO performance. Documents where the GEO Stack agrees, where it adds something different, and what Experiment 001 data contributes to the debate.