← All posts

Google doesn't read your text — it extracts triples

· 5 min read · By Mikhail Kuzmitskii

GEOKnowledge GraphSchema.orgentities

View as Markdown ↗

Google doesn't read your text — it extracts triples

What a triple is

A provocation that’s closer to the truth than you’d like: Google doesn’t “read” your beautiful text. It parses it into triples — the minimal units of a fact, in three parts: subject → predicate → object.

One paragraph of prose becomes a set of structured statements:

  • Airalois aeSIM provider
  • Airalofounded2019
  • Airaloworks in200+ countries

It’s triples, not paragraphs, that land in the knowledge graph and surface later inside an AI answer. Your GEO job is to make sure the right triples extract cleanly and unambiguously.

Why machines think in triples, not paragraphs

Google’s Knowledge Graph is, in the words of the US v. Google antitrust record, a “first-party data repository of facts about the world that users can query” (¶584, Parakh). It’s assembled from web crawl (facts extracted from pages), first-party databases and UGC — and those are facts in the form of “entity–relation–value” triples.

Then the part that matters for GEO:

  • AI Overview grounds on the knowledge graph. “AI Overviews use a customized Gemini model in tandem with our Search systems — ranking and the Knowledge Graph” (¶833, Reid). So getting your fact into the KG is a shot at getting into the generated answer.
  • Entity disambiguation. Before answering anything, the engine has to know which entity you mean (Airalo the provider, not a random word). That’s done through the graph.
  • Data is taken even from those who lock others out. Google imports facts from pages into the KG even when robots.txt blocks other crawlers (¶586) — so the structure of your facts works for you either way.

”Detached entity”: in the text, not in the graph

The worst case is when your brand is mentioned in the text but doesn’t exist as an entity in the graph. The model sees the word but doesn’t connect it to a node that has a type, properties and relations. Such a “detached entity” can’t be confidently cited: the engine doesn’t know that Airalo is an Organization, an eSIM provider, with a sameAs to Wikidata.

The symptom: ask an AI “what do you know about <your brand>” and you get “no information found,” confusion with a namesake, or vague generalities. That’s not a text problem, it’s a graph problem: the entity isn’t anchored.

How to write for triple extraction

Six moves that turn prose into extractable facts:

  1. Explicit S–P–O sentences, no pronouns. “Airalo works in 200+ countries,” not “it covers many.” Subject, relation and value in one sentence.
  2. Schema.org = triples made explicit. JSON-LD is literally a declaration of triples: ProductbrandAiralo, OrganizationfoundingDate2019. Don’t make the machine guess — declare it.
  3. sameAs → Wikidata / Wikipedia. This is the entity anchor: it tells the graph “this is that Airalo, here’s its node.” Without it, the entity is easy to confuse with a namesake.
  4. about / mentions with @id. Link the page to graph entities by machine identifier, not just by name.
  5. Fact consistency across the whole site. If one page says “founded 2019” and another “since 2018,” the graph gets conflicting triples and trusts both less. One fact, one value, everywhere.
  6. Facts with a source. A triple attributed to a named source weighs more: the grounding layer accepts a confirmed fact more readily.

“Entity → property → value” tables and FAQ blocks are the most triple-friendly formats: they’re already structured as S–P–O.

How to check it on your own site

We built this into the audit:

  • schema-eligibility — which Schema.org types your page warrants and which are missing (no Product/Organization → no explicit triples).
  • entity-references — whether you declare about/mentions/sameAs with KG identifiers (is the entity anchored).
  • trust-audit (entity) — whether the site’s entity is established at the brand level (About, sameAs, organization).
  • brand-perception — an AI probe of “what do you know about <brand>”: does it know you, describe you accurately, avoid confusing you with a namesake — a direct test for the “detached entity.”

What to do

  1. Rewrite key facts as S–P–O — no pronouns, the subject in every sentence.
  2. Declare entities via Schema.org (Organization/Product + sameAs to Wikidata) — don’t leave the graph guessing.
  3. Reconcile facts across the site — one value per fact, or you get conflicting triples.
  4. Check whether AI knows you — if it’s a “detached entity,” anchor the entity first, then chase citations.

You still need Google rankings. But both they and AI answers increasingly lean on the same layer — the graph of facts. And the graph thinks in triples.

Sources

  • US v. Google, case materials (2025) — the Knowledge Graph as a “first-party repository of facts” (¶584, Parakh); AI Overview grounding on the KG (¶833, Reid); import of web data into the KG (¶586).
  • schema.org — Organization, Product, sameAs, about/mentions: declaring triples in JSON-LD.
  • Wikidata — the open entity graph; the sameAs anchor for disambiguation.
  • GEO-HowTo 2026 — grounding AI answers on the knowledge graph and the extractability of facts.

FAQ

What is a semantic triple, in plain terms?

It's the minimal unit of a fact, in three parts: subject → predicate → object. For example, 'Airalo → is a → eSIM provider' or 'Airalo → founded → 2019'. That's the form in which a knowledge graph and language models store facts about the world; a machine first parses your paragraph into triples like these.

Why does this matter for GEO and getting into AI answers?

AI Overview and language models ground on the knowledge graph and on facts extracted from text. If a fact can't be parsed unambiguously into a triple — because of pronouns, vague phrasing, or the entity not existing in the graph — the model either extracts it wrong or ignores it, and you don't get cited.

How do you write text for triple extraction?

State facts as explicit S–P–O sentences with no pronouns ('Airalo works in 200+ countries', not 'it covers many'), declare entities via Schema.org (about/mentions/sameAs with @id), point sameAs at Wikidata/Wikipedia, keep facts consistent across the whole site, and back them with sources.

Was this helpful?
Launch SEO/GEO with seo·matrix → or a request without Telegram →

Comments

Comments are moderated.