CrawlCheck

Directory · Design and interface generation

v0 — what a crawler receives from v0.dev

Website measurement, not a product review. This page records what machine clients received from v0.dev. It does not evaluate v0 software, features, pricing or support.

73
Cgrade

Answer engines can technically reach this site, but get little they can use.

AI visibility 73/100, measured 2026-10-05 10:18 UTC from outside its network, as each named AI and search crawler and as a browser. An engine can technically reach this site and would struggle to get anything quotable out of it.

Held at C A medium-severity finding sets the letter.

Open the full report v0.dev ↗

4

findings

✗

llms.txt on its host

✗

entity map on its host

6

scans on record since 2026-09-18

The three stages, in the order an engine hits a site

Each stage gates the next. An engine that cannot reach a page never reads it; one that cannot read it never quotes it. That is why reach is a ceiling and not just a weight.

83

Stage 1 · 40% of the score

Reach

Can a named answer-engine crawler get your pages at all?

At least one answer engine was refused, challenged or served less than a browser.

77

Stage 2 · 30% of the score

Read

Once it has the bytes, can it find the words?

The content is buried in markup, or the files that guide a crawler are missing.

57

Stage 3 · 30% of the score

Quote

Is there a specific fact it can state and attribute?

An assistant would have to paraphrase your page instead of quoting a fact.

The stage to fix first is quote, because the three run in order.

What to fix

4 findings on this site, 2 of them scored serious. Every one is named below; the top one is shown in full, free. What we saw, why each matters, how to fix it and the bytes behind it are what a licence buys — or we implement the whole list for you.

2 Medium 1 Low 1 Note

1The homepage sends crawlers to a different hostnameA request for https://v0.dev/ answered HTTP 307 with a redirect to v0.app. That host is neither v0.dev nor its www/apex peer, so the scan did not follow it; eveMediumSetting

What we saw

A request for https://v0.dev/ answered HTTP 307 with a redirect to v0.app. That host is neither v0.dev nor its www/apex peer, so the scan did not follow it; every section that needs the homepage is unmeasured below.

Why it matters

An answer engine resolving this domain is handed a page on another host. Content, schema and entity signals it finds there are attributed to v0.app, and v0.dev itself reads as a site with no homepage. Geo-routed storefronts and locale redirects are the usual cause; the fix is to serve a canonical page at the root and redirect by link, not by host.

How to fix it

Point the domain at the site it is meant to serve, or make the redirect a single permanent hop to the canonical host.

Setting: a setting on the server, CDN, DNS or a plugin — no code and no writing

Why this was decided
RuleHOMEPAGE_REDIRECTS_OFF_HOST · rule pack sv27 · scope route
Evaluated2026-10-05 10:18:09 UTC
Decisiond1:c3709ca91acea5bd10f1 · finding f1:11f05b581d23c9a5b990 resolve either at /api/graph/<id> with a key
Observercrawlcheck-worker build 71386c1f · audit v4

What it rests on

IdentityStatusBytessha256Kept
read: /2001,039,408a4643009f3eckept

23 more in the manifest.

Artifacts: manifest:2547e262a0c71fdcf4e4be2a9218192e3e3ffc0b0a0f4e159a4128e8bc67198f

Grade effect Caps the letter at C together with 1 other medium-severity finding; the letter rises only when all of them are gone. Moves no points.

Rule HOMEPAGE_REDIRECTS_OFF_HOST under scoring rules v31 · fingerprint HOMEPAGE_REDIRECTS_OFF_HOST|/ · persisting (6 scans)

Verify the fix Re-scan after the change. This finding is cleared when HOMEPAGE_REDIRECTS_OFF_HOST is no longer reported at /; if it comes back after clearing, it is marked a regression, not a new finding.

HOMEPAGE_REDIRECTS_OFF_HOST · full transcript

2Almost nothing a machine receives from this page is readable text🔒 What we saw, why it matters, the fix and the evidence bytes are in the licensed report.Medium
3Visitors and crawlers are being served an old copy of this page🔒 What we saw, why it matters, the fix and the evidence bytes are in the licensed report.Low
4No llms.txt/llms.txt🔒 What we saw, why it matters, the fix and the evidence bytes are in the licensed report.Note

Open the other 3

What we saw, why it matters, how to fix it, and the evidence bytes for every finding — on this report and every re-scan. From $29 a month.

Unlock the findings

Or have them fixed

We implement the list on your site and re-measure, with a sealed before and after. One site, $749 once.

Get this fixed — $749

The chain a crawler follows

The chain breaks at llms.txt. Everything after that point is only reachable by a crawler guessing the conventional path.

✓robots.txtEvery crawler reads this first
✓sitemapNamed in robots.txt and resolves
✗llms.txtPoints onward, links stay on this host
✗entity graphParses as JSON and points home

A machine file that does not parse is worth less than one that is absent, because it looks present. Rows behind this.

Where the bytes go

Of the 1,039,219 decompressed bytes the homepage delivers, 0.4% is text a reader or a model can actually use. Most of what a crawler downloads here is not words.

  • Readable text 0.4% · 4,124 B
  • Markup & attributes 38.6% · 400,827 B
  • Structured data (JSON-LD) 0.1% · 741 B
  • Inline CSS 0% · 55 B
  • Inline JavaScript 44.7% · 464,769 B
  • Inline SVG 16.2% · 168,044 B
  • HTML comments 0.1% · 659 B

The individual blocks that weigh the most, so the fix is a search rather than a hunt:

  • Inline JavaScript · 218,031 B (21%) — unnamedopens self.__next_f.push([1,"45:o1,~45:o7a5,2:\"$Sreact.fragment\"\n3:\"/cha
  • Inline JavaScript · 156,649 B (15.1%) — unnamedopens self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:\"/chat-static/_next/
  • Inline JavaScript · 57,302 B (5.5%) — unnamedopens self.__next_f.push([1,"148:[\"$\",\"$L147\",\"LHv4frpA7Us-3\",{\"index
  • Inline JavaScript · 10,926 B (1.1%) — unnamedopens (function fZ({composerId:a,draftKey:b,isMobile:c,isNewChat:d,extractTe

What changed

  1. 2026-10-05a stale edge copy was served againreturned
  2. 2026-09-24the stale edge copy clearedresolved
  3. 2026-09-24resolved: a named crawler was served materially less text than an ordinary clientresolved
  4. 2026-09-19resolved: the hsts header asks for browser preloading but does not qualify for itresolved
  5. 2026-09-19a stale edge copy was servedappeared
  6. 2026-09-19a new finding appeared: a named crawler was served materially less text than an ordinary client againreturned
  7. 2026-09-18score moved 72 → 71score-down
  8. 2026-09-18resolved: a named crawler was served materially less text than an ordinary clientresolved

6 scans on record, first 2026-09-18. Score movements are shown only between readings taken under the same score version; finding codes are comparable across all of them.

Is this your site?

This listing reads the public record. Claim it and Watch keeps that record on your terms: every list this page holds back, finding age, and twice-daily re-measurement. Free for 30 days, no card.

Claim the record for v0.dev

Is this your company?

This listing came from a fetch, not a submission, so nobody was asked. If v0.dev is yours you can prove it in a minute and for nothing — a DNS TXT record or one meta tag on the home page, both checkable by anyone.

Claiming marks you as the verified owner and lets you correct the category and the company name. It moves no score, no rank and no position.

Claim this listing — free or ask about a verified profile

Dispute or re-scan

If a reading here is wrong, it is our instrument that is wrong, and we want to know. Tell us what is wrong and the site is re-measured; the result is published as measured. Nothing about a listing, a payment or a request changes a number.

By email instead: hello@crawlcheck.io. Category “Design and interface generation” is our label for what the product is primarily sold as; it is not scored. Back to the directory.