A practical playbook for writing articles, docs, and landing pages that generative engines read, trust, and cite — with real before/after examples.
Generative engines do not "rank" pages. They retrieve, evaluate, and cite. If your content is hard to parse, vaguely worded, or buried under fluff, the model skips it and cites a competitor.
Here is the playbook we use to make every page citation-worthy.
Answer engines extract the first clear statement. Bury it under a three-paragraph intro and you lose the citation.
Weak:
In today's fast-paced digital landscape, businesses of all sizes are increasingly recognizing the importance of structured data…
Strong:
Structured data (JSON-LD) tells search engines what a page is about in a machine-readable format, which can earn rich results like star ratings and FAQ dropdowns.
The second version is quotable. The first is wallpaper.
Models map headings to questions. ## How do I add JSON-LD to Next.js? is a retrieval target. ## Implementation Details is not.
Turn every ## heading into a question a real user would type:
## Configuration## How do I configure the sitemap?Generative engines read structured data to disambiguate entities. The high-value schemas for a micro-SaaS:
| Schema | What it declares | Where it goes |
|---|---|---|
SoftwareApplication | Your app, pricing, category | index.html |
Organization | Publisher identity | index.html |
BlogPosting | Article metadata | Article pages |
FAQPage | Question/answer pairs | Support, pricing |
BreadcrumbList | Page hierarchy | All pages |
SpaceZero's Discovery Pack generates the sitemap, llms.txt, RSS, and per-route WebPage schemas at build time from a single route config. Every blog and knowledge-base article is additionally prerendered to its own static page with BlogPosting + BreadcrumbList JSON-LD and full crawlable content.
llms.txt is the robots.txt of the AI era — a curated map of your site for generative crawlers. A minimal llms.txt:
# MyApp
> One-line description of what the app does.
## Core Pages
- [Home](https://myapp.space/): What the product is
- [Pricing](https://myapp.space/#pricing): Plans and prices
- [Docs](https://myapp.space/kb): How it works
## API
- POST /api/endpoint: What it does
Keep it under a few hundred lines. Link to the pages that answer questions, not every page.
Models build an entity graph. If you call your product "MyApp" on the homepage, "My App" in the footer, and "myapp.io" in the schema, the graph fragments.
Pick one name, one category, one price, and use them everywhere — title, schema, footer, emails.
Freshness is a trust signal. A dated changelog with an RSS feed tells both search engines and AI crawlers that the project is alive. SpaceZero generates rss.xml and a /changelog page from CHANGELOG_ENTRIES at build time.
llms.txt exists and is current.Do these six things and your content stops being invisible to the models that increasingly mediate discovery.