Guide
SEO, GEO & performance
What Kaury generates for Google and for AI assistants, and why the sites it builds score 100 for SEO on Lighthouse.
A Kaury site is ready for search engines and for AI assistants (GEO, generative engine optimization) without a plugin.
What every build generates
| File or tag | Purpose |
|---|---|
| server-rendered HTML for every page | content readable without JavaScript, by any crawler |
<title>, description, canonical link |
from seo and url |
| Open Graph and Twitter tags | sharing previews; share images cropped to 1200×630 |
sitemap.xml |
every page, collection pages included |
robots.txt |
open by default |
llms.txt |
an index of the site for AI assistants |
JSON-LD WebSite |
on the home page |
hreflang alternates |
with alternate "fr" "/fr/" |
.htaccess and _headers |
long cache for assets, on Apache and Netlify |
Structured data in one line
json-ld turns any object into a <script type="application/ld+json">, given to head:
let faq = {
"@context": "https://schema.org",
"@type": "FAQPage",
mainEntity: [
{ "@type": "Question", name: "Do you deliver?", acceptedAnswer: { "@type": "Answer", text: "Yes, the same day." } }
]
}
page "/"
head json-ld(faq)
Writing for AI assistants
Assistants quote pages that answer a question plainly. Kaury helps on the technical side; the rest is writing:
- a definition sentence near the top ("Bloom is a flower shop in Vevey that…");
- headings phrased like the questions people ask;
- facts with numbers, dates and places;
- one page per topic, linked together.
Why Lighthouse gives 100
- every page is rendered on the server, then the browser adopts that HTML (hydration) instead of rebuilding it;
- CSS is inlined: nothing blocks the first paint;
- images get real dimensions, responsive WebP versions and the right loading priority;
- fonts are downloaded at build time and served by the site;
- the 3D library loads only where needed, after the first gesture;
- text colors on colored backgrounds are chosen for WCAG contrast;
- a page without interaction ships zero JavaScript.
The measured numbers are on the home page.