JSON-LD for AI visibility: the schema that actually matters
Most schema advice is a thirty-type checklist. For AI visibility, four types do almost all the work — and two common moves actively poison the trust you're building. Here's exactly what we emit, what we refuse to emit, and why.
On this page
- 01What JSON-LD actually does for an AI engine
- 021. Organization — or SoftwareApplication, if you're software
- 032. Article — on content, with nothing invented
- 043. BreadcrumbList — the safe one
- 054. FAQPage — powerful, and only when it's real
- 06The two moves that hurt you
- 07One detail worth stealing
- 08Where schema fits in the sequence
Ask an SEO about structured data and you'll usually get a checklist of thirty schema types and a plugin that stamps all of them on every page. For AI visibility, the honest list is much shorter: four JSON-LD types do almost all the work, and two common moves actively damage the trust you're trying to build. We have to be precise about this, because our scanner generates a ready-to-paste JSON-LD block for every brand it scans — code we have to stand behind for someone else's site. That forced us to decide exactly what to emit, and what to refuse to emit. This post is that reasoning, in full.
What JSON-LD actually does for an AI engine
When a model reads your page — during a training crawl, or live at answer time — it's extracting facts: what is this thing, what category is it in, who is it for. It can dig those out of your hero copy and pricing table, with some error rate. JSON-LD is those facts pre-extracted: a machine-readable block that says "this entity is named X, it is a Y, its canonical URL is Z" with no ambiguity and nothing to misparse.
The honest caveat first, because schema vendors oversell this. JSON-LD helps an engine that has already reached your page describe you accurately. It does not, on its own, make engines recommend you — most of that battle happens off your domain, in the third-party evidence we covered in why AI recommends your competitor. And no schema helps if the AI crawlers can't fetch the page at all, so verify that first with our free AI crawlability checker. Schema is the cheap, fully-controllable slice of machine legibility. Do it — just do these four types, properly.
1. Organization — or SoftwareApplication, if you're software
This is the one that matters most: the entity node. It tells the model what kind of thing you are, which is the single fact it most needs to place you in a consideration set.
Two rules we hold to when we generate this node for a scanned brand:
- Pick the right type for what you sell. A software product gets
SoftwareApplication— it's the richer node, and it's the entity engines quote when asked "what is X" or "best X tools." An agency, a service firm, a local business getsOrganization. Our fix kit decides by reading the brand's actual category; you can decide by asking whether a buyer would call you a product or a company. - Lead the description with your category, not your name. "X is an AI search visibility monitoring tool that…" teaches the machine the category, which is what recommendation questions are asked in. A description that opens with vision-statement language teaches it nothing it can reuse.
Give the node a stable @id and reference it from everything else (articles, breadcrumbs), so every page on your site reinforces one entity instead of scattering fragments.
2. Article — on content, with nothing invented
Every blog post or guide should carry an Article node: headline, description, real publish and modified dates, and your Organization as publisher. The rule that keeps it useful: every field must be visibly present on the rendered page. Dates the reader can't see, bylines that don't exist, a headline that doesn't match the H1 — all of that teaches crawlers your markup can't be trusted, which is the opposite of the point.
3. BreadcrumbList — the safe one
BreadcrumbList mirrors your visible navigation hierarchy (Home → section → page). It's modest, but it's safe on literally any page and gives structured coverage to pages that have no honest claim to richer types. When in doubt about whether a page deserves schema, breadcrumbs are the answer that can't backfire.
4. FAQPage — powerful, and only when it's real
Question-and-answer markup is genuinely valuable for AI engines, because buyer questions are the query format — a marked-up Q&A hands the model a quotable answer in exactly the shape it needs. But it comes with the hardest rule on this list, and it's one we enforce on ourselves in code: never emit FAQPage (or HowTo) for content that is not visibly rendered on the page. Structured data that misrepresents what the reader actually sees is exactly what Google's spam policies target with manual actions, and hidden-FAQ markup is the most common way sites earn one. If the Q&A is on the page, mark it up. If it isn't, don't.
The two moves that hurt you
Here's what we deliberately refuse to generate, even though plugins add both by default:
aggregateRatingwithout verified reviews. A star rating in your markup with no real third-party reviews behind it is a fabricated claim, in machine-readable form, signed by you. We don't emit one for our own site either — we have no verified review profiles yet, so asserting a rating would be lying in the one format machines trust most.sameAslinks to profiles that don't exist.sameAsis entity disambiguation: "this brand is the same entity as this LinkedIn page, this G2 profile." Pointing it at profiles you haven't created — because a template said to fill them in — sends engines to dead ends and poisons exactly the trust signal the field exists to build. List only profiles that are real and yours. An emptysameAsbeats a hopeful one.
The pattern behind both: schema is testimony, not decoration. Anything in it you can't back is worse than saying nothing.
One detail worth stealing
When our scanner builds a JSON-LD block for a brand, it fills the keywords field with the brand's real competitors — the ones the AI engines actually named in its scan. That's consideration-set context grounded in observed fact: it tells an engine which shortlist you belong on, using names it already associates with the category. You can do this by hand — list the alternatives buyers genuinely compare you against, not the giants you aspire to.
Where schema fits in the sequence
Structured data is one item on a longer list. The sensible order: confirm the AI crawlers can reach you (crawlability checker), publish an llms.txt (one-click generator here), add the four types above — then spend the rest of your effort off-domain, on the third-party evidence that actually decides recommendations. The GEO content checklist sequences all seven items.
And before you touch any of it: find out where you actually stand. Our free scan puts 25 real buyer questions to ChatGPT, Claude, Gemini, and Perplexity and shows you, question by question, whether you're named, who's named instead, and the exact sentence each engine returned — plus a machine-quotable kit with a JSON-LD block built for your brand, following every rule in this post. No signup, about a minute.