v0 by Vercel · Easy — Next.js native

Make Your v0 Site Readable for ChatGPT and Perplexity

v0 generates Next.js components that deploy on Vercel. It is standard Next.js, which has built-in metadata APIs, so Schema.org, robots.txt and the sitemap are added the standard way.

Why v0 projects are easy to prepare

Next.js has built-in metadata exports, robots.ts and sitemap.ts, so crawlers get these files from standard addresses. Schema.org goes in the root layout.tsx as a script tag.

What we'll add:
  • Organization Schema in app/layout.tsx
  • FAQ Schema on the homepage, as JSON-LD
  • app/robots.ts — allow AI crawlers via Next.js API
  • Specifics and freshness — prices, facts and update dates on the page itself; markup does not replace them
  • public/llms.txt — a short summary of the site for AI agents; no proven effect on AI answers
0

Generate your fix files

  1. Go to causabi.com
  2. Enter your deployed Vercel URL
  3. Copy the Schema.org, FAQ Schema, llms.txt, and robots.txt
1

Add Schema.org to layout.tsx

v0 projects use Next.js App Router. Add Schema.org as a script tag in your root app/layout.tsx.

Prompt for v0 chat
In app/layout.tsx, add these JSON-LD scripts inside the <head> (before </head> or as Script components). This is Organization Schema and FAQ Schema, so AI crawlers can read the business facts: <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({ [PASTE ORGANIZATION SCHEMA OBJECT FROM CAUSABI] }) }} /> <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify({ [PASTE FAQ SCHEMA OBJECT FROM CAUSABI] }) }} />
Or — add directly to layout.tsx
// app/layout.tsx const orgSchema = { /* paste the Organization Schema object from Causabi here */ } const faqSchema = { /* paste the FAQ Schema object from Causabi here */ } export default function RootLayout({ children }: { children: React.ReactNode }) { return ( <html lang="en"> <head> <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(orgSchema) }} /> <script type="application/ld+json" dangerouslySetInnerHTML={{ __html: JSON.stringify(faqSchema) }} /> </head> <body>{children}</body> </html> ) }
2

Create app/robots.ts

Next.js generates /robots.txt from app/robots.ts. This is the cleanest approach.

Prompt for v0
Create app/robots.ts with this content to allow AI search crawlers: import { MetadataRoute } from 'next' export default function robots(): MetadataRoute.Robots { return { rules: [ { userAgent: '*', allow: '/' }, { userAgent: 'GPTBot', allow: '/' }, { userAgent: 'ClaudeBot', allow: '/' }, { userAgent: 'PerplexityBot', allow: '/' }, { userAgent: 'Google-Extended', allow: '/' }, ], sitemap: 'https://your-domain.com/sitemap.xml', } }
3

Add public/llms.txt

In Next.js, files in public/ are served at the root. Create public/llms.txt with your content from Causabi.

Prompt for v0
Create public/llms.txt with this content: [PASTE LLMS.TXT FROM CAUSABI] This file will be served at /llms.txt.
4

Deploy to Vercel and verify

  1. Push changes to GitHub — Vercel auto-deploys
  2. Check your-site.vercel.app/robots.txt and /llms.txt
  3. Run a new check on causabi.com — an AI score of 70 or more is Good
  4. Validate Schema: validator.schema.org

Check your own site right here

Enter your domain — we’ll show your AI score and the biggest thing keeping ChatGPT and other AI engines from reading your site.

Updated:

Frequently asked questions

Do I need to rebuild my v0 site to make it readable for ChatGPT and Perplexity?

No. v0 generates Next.js components that deploy on Vercel. It is standard Next.js, which has built-in metadata APIs, so Schema.org, robots.txt and the sitemap are added the standard way.

Where does Schema.org go in a v0 project?

In the root app/layout.tsx, as a script tag with JSON-LD. The guide adds Organization Schema and FAQ Schema there, using the objects generated by Causabi.

How do I let AI crawlers read a v0 site?

Create app/robots.ts. Next.js generates /robots.txt from it. The example in the guide allows GPTBot, ClaudeBot, PerplexityBot and Google-Extended and points to your sitemap.

Where does llms.txt go, and does it change what AI answers say?

In Next.js, files in public/ are served from the root, so public/llms.txt is served at /llms.txt. It is a short summary of the site for AI agents; its effect on AI answers is not proven.

Does Schema.org markup replace facts on the page?

No. Put prices, facts and update dates on the page itself; markup does not replace them.

How do I check that it worked?

Push the changes to GitHub, and Vercel deploys automatically. Then open your-site.vercel.app/robots.txt and /llms.txt, run a new check on causabi.com (an AI score of 70 or more is Good) and validate the Schema at validator.schema.org.

Is the check free?

The check and a preview of the files are free. The files pack is $19 once per site (included in paid plans): Schema.org, FAQ Schema, llms.txt and robots.txt tailored to your site.

Check your site and preview the files for free

The check and a preview of the files are free. The files pack is $19 once per site (included in paid plans): Schema.org, FAQ Schema, llms.txt, and robots.txt tailored to your site, ready to paste into v0.

Check my site
Make Your v0 Site Readable for ChatGPT and Perplexity