SEO data
SEO is part of the build, not an upsell.
Models reliably produce a gorgeous page with no title, no description and no structured data. It is the single biggest gap between what an AI writes unprompted and what a site needs to exist in search, so here it is spelled out rather than hoped for.
Every build that produces pages gets the full technical SEO set — head tags, headings, landmarks, alt text, structured data, sitemap. It costs about $0.02 a build and is never sold separately.
Build the site.
title, description, OG, canonical, JSON-LD all addedpassed the audit · ~350 tokens · about $0.02
The gap
What a model writes when nobody insists.
The same page either way — the difference is entirely in the ten lines a browser and a crawler read first.
- A page that looks genuinely good
<title>Document</title>, or no title element at all- No description, so the search result is whatever Google can salvage
- No structured data, no canonical, no Open Graph card
- Images with no alt text, headings that skip from h1 to h4
- The same page, looking the same
- A title under 60 characters naming the business and what it does
- A description written for a person deciding whether to click
- Open Graph, canonical, and JSON-LD matched to what the thing is
- Alt text on every image, headings in order, real landmarks
The checklist
Every item, and what it costs to skip.
| What | The rule | Without it |
|---|---|---|
<title> | Under 60 characters, naming the business AND what it does | Truncated in results, or worse, absent |
meta description | 140–160 characters written for a person deciding whether to click | Google writes its own from your page, badly |
canonical | Pointing at this page's own URL | Two URLs compete for the same ranking |
| Open Graph | og:title, og:description, og:type, og:url, og:image | Shared links show a bare URL with no card |
lang and viewport | Set on every page | Wrong-language results, and a desktop layout on a phone |
One <h1> | Headings descend in order, never skipping a level for a size | Nothing states what the page is about |
| Landmarks | header, nav, main, footer — real elements | Screen readers and crawlers get one undifferentiated blob |
| Alt text | On every image, or empty if it is decorative | An accessibility failure and a lost image result |
| JSON-LD | LocalBusiness, Person or Organization — only fields actually known | No rich result at all |
The one prohibition
It will not make things up.
Structured data is the easiest place in a website to lie, and a model with no instruction will cheerfully emit a 4.9 star rating from 127 reviews for a business that opened last week. So the rule is explicit: use only fields you actually know, and never invent ratings, review counts or addresses. Google penalises fabricated review markup, it exposes you to a consumer-protection problem that is genuinely yours and not ours, and nobody asked for it.
The same rule applies to the page copy. Where a detail is not known, it picks something plausible and then tells you which details it invented, so you can correct them rather than discover them.
Checked, not promised
An audit runs against the finished page.
An audit runs against the finished page — the same one this website is held to.
A real one
Passed the SEO audit at 21 of 21.
“Build a portfolio site for a freelance architectural photographer based in Chicago. A grid of work, a short about section, and a way to enquire about a commission. I want it to look expensive — editorial, lots of whitespace, restrained type.”
DeepSeek V4 Flash1 turnSEO 21/21
$0.0063
See all 53 builds →
This page
Everything above, on the page you are reading.
View source. This page carries a WebPage node, a FAQPage node built from the three questions at the top of its markup, and a BreadcrumbList derived from its own URL so it cannot disagree with the navigation. Its title is under 60 characters and its description is inside the 140–160 window it asks of everything else. The sitemap that lists it is generated from the canonical tag of every page that actually got written, because a hand-kept list is how new pages ship unlisted.
Selling technical SEO from a site that does not have it would be a strange way to make the argument.
If you want this run on a site you already have
There is a job for that, and it shows its price first.
Everything on this page is what a new build gets for free. For a site that already exists, Make your site easier to find does the same pass over every page you already serve and shows you the before and after before anything is published — one of ten jobs you can ask for by name.
Build something findable.
Describe it, and the page that comes out is already ready to be indexed.
Questions
Asked, answered
Do I have to pay extra for SEO?
No. Technical SEO is part of every build that produces pages. It costs roughly $0.02 across a twelve-turn build, and it is not a separate product.
What structured data do you add?
LocalBusiness for a local business, Person for a portfolio, Organization for a product — using only fields that are actually known. Ratings and review counts are never invented.
Will my site have a sitemap?
If it has more than one page, yes: sitemap.xml listing them all and a robots.txt pointing at it, with each page getting its own title, description and canonical.