https://nextjs.org scored 92 out of 100 (A-) across 213 checks, with 1 outright failures and 24 warnings. Jev typed the page as saas_product.
On the four questions that decide AI-answer visibility: machines mostly yes discover the pages (0.72), clearly yes parse and quote the content (0.89), clearly yes tell who the business is (0.81), and only weakly find signals to trust it (0.31).
The area with the most to gain is credibility signals. Real, but not pressing.
At least one finding needs a human specialist rather than a generated file.
| scored checks | 143 of 213 total. The rest are context (info) or not applicable to this page type. |
|---|---|
| rest on a source | 105 of 143 scored checks rest on a standard, a vendor requirement or vendor documentation. |
| our invention or proxy | 38 scored checks are our own threshold or an adjacent measurement. They are listed below and marked OUR-INVENTION or PROXY. |
| policy corrections | 2 check(s) were adjusted by evidence policy from what the module asserted. Each is recorded with its reason in the JSON. |
| standing | check we still score |
|---|---|
| COMMUNITY-CONVENTION | llms.txt is present aeo.llms_present |
| COMMUNITY-CONVENTION | llms.txt is served as text/plain or text/markdown aeo.llms_content_type |
| COMMUNITY-CONVENTION | llms.txt parses as markdown aeo.llms_markdown |
| COMMUNITY-CONVENTION | llms.txt has an H1 aeo.llms_h1 |
| COMMUNITY-CONVENTION | llms.txt contains a markdown link aeo.llms_link |
| COMMUNITY-CONVENTION | Markdown/plain-text page variant offered aeo.md_variant |
| COMMUNITY-CONVENTION | Accept: text/markdown negotiation honored aeo.accept_markdown |
| COMMUNITY-CONVENTION | Content served without a consent cookie aeo.cookie_free |
| COMMUNITY-CONVENTION | Schema.org structured data present aeo.schema_types |
| COMMUNITY-CONVENTION | JSON-LD blocks are valid aeo.jsonld_valid |
| OUR-INVENTION | llms.txt is under our heuristic size limit aeo.llms_size |
| OUR-INVENTION | FAQ/Q&A block present in HTML aeo.faq_block |
| OUR-INVENTION | Paragraphs are short (median word count) aeo.para_median |
| OUR-INVENTION | Opening paragraph is a direct answer (<60 words) aeo.direct_answer |
| OUR-INVENTION | Only one meta description meta.description.duplicate |
| OUR-INVENTION | Below-the-fold images lazy-load images.lazy |
| OUR-INVENTION | Page has internal links links.internal |
| OUR-INVENTION | No empty anchor text anchors.empty |
| OUR-INVENTION | Outbound links carry appropriate rel links.external_rel |
| OUR-INVENTION | Open Graph tags are complete og.complete |
| OUR-INVENTION | og:image is absolute with dimensions og.image_abs |
| OUR-INVENTION | Twitter card is configured twitter.card |
| OUR-INVENTION | Character encoding is declared meta.charset |
| OUR-INVENTION | Viewport meta is set meta.viewport |
| OUR-INVENTION | No deprecated HTML tags html.legacy_tags |
| OUR-INVENTION | Inline styles/scripts are minimal maintainability.inline |
| PROXY | Page has substantive content aeo.content_length |
| PROXY | Definition/summary present in the first screen aeo.first_screen |
| PROXY | Visible 'last updated' text present aeo.last_updated_text |
| PROXY | Author page is reachable aeo.author_page |
| PROXY | Social profile links present aeo.social_links |
| PROXY | Organization name is consistent aeo.org_name_consistency |
| PROXY | External links are followed aeo.external_nofollow |
| PROXY | Sentence length is reasonable aeo.sentence_length |
| PROXY | H1 topic terms appear in the first paragraph aeo.h1_in_first_paragraph |
| PROXY | No repeated sentences aeo.duplicate_sentences |
| PROXY | No repeated headings aeo.duplicate_headings |
| PROXY | Alt text is descriptive aeo.alt_text_quality |
| known limits | Off-page drivers are the strongest known influence on AI citation and this tool cannot see them: brand web mentions correlate about 0.664 with AI Overview visibility against 0.218 for backlinks, and AI-perceived domain authority is reported as roughly 6x more influential than any page-level feature. Reddit and forum presence shapes AI answers but is not a property of the audited page. Per-engine citation monitoring needs the engine's own reporting (Search Console's generative AI report, Bing's AI Performance) rather than a fetch. |
|---|
| page type | saas_product · decided by jev · 718.1 ms · 908 input tokens · jev-1.13.0 |
|---|---|
| transactional | False |
| FAQ natural here | True |
| content-primary | False |
| not applicable | none, every check applied to this page type |
| title | Next.js by Vercel - The React Framework (39 chars) |
|---|---|
| meta description | Next.js by Vercel is the full-stack React framework for the web. |
| words | 1235 |
| h1 count | 1 |
| links | 166 total, 91 internal |
| images | 65 |
| structured data | 1 block(s): Organization, SoftwareApplication, WebSite |
| result | severity | check | wt |
|---|---|---|---|
| fail | medium | Legal & trust pages are reachableVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs 0 of 7 common paths return 200. privacy-policy=404 privacy=404 terms=404 terms-of-service=404 cookie-policy=404 contact=404 about=404 Publish privacy, terms and contact pages and link them site-wide. | 1.5 |
| result | severity | check | wt |
|---|---|---|---|
| warn | medium | Definition/summary present in the first screenPROXY AEO Content & Trust adjacent measurement unless listed below First 2 paragraphs carry only 34 words — little to lift for a direct answer. Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components. Open with a 1-2 sentence definition or summary of the topic. | 3.0 |
| warn | medium | Claim density and specificityVENDOR-DOCUMENTED AEO Content & Trust Princeton GEO found statistics addition among the strongest methods 10 numbers, 0 percentages, 1 dates, 3 unit mentions and 0 currency amounts. Thin on specific figures — GEO 'Statistics Addition' (~+37%) and Bing's 'support claims with evidence' favour content dense with data. 4 specific citable figures Add concrete numbers, percentages, dates, units or currency amounts. | 2.0 |
| warn | medium | Topic vocabulary is echoed in the answer contentVENDOR-DOCUMENTED AEO Content & Trust prompt-content alignment was the dominant on-page lever 2/4 distinctive title/H1 terms reappear in the answering content; missing: framework, vercel. (Proxy: token overlap for semantic prompt-content alignment.) found: react, next | missing: framework, vercel Echo the page's own topic terms in the lead and answer paragraphs. | 2.0 |
| warn | low | HTML document weight is reasonableVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs Measured via decoded text re-encoded. 366713 bytes | 1.5 |
| warn | low | Render-blocking stylesheet count is lowVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs 5 render-blocking stylesheet(s) in <head> Inline critical CSS or split stylesheets by media. | 1.5 |
| warn | low | DOM size is reasonableVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs 2488 elements Trim widget-heavy markup. | 1.5 |
| warn | low | 404 page is a styled HTML pageVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs 404 has a title but no obvious navigation back into the site. HTTP 404; title present, nav absent Add nav/links to the 404 template. | 1.5 |
| warn | low | Alt text is descriptivePROXY AEO Content & Trust adjacent measurement unless listed below 15 of 65 image(s) have empty or filename-style alt text. (empty alt), (empty alt), (empty alt), (empty alt), (empty alt) Describe images in alt text instead of leaving filenames. | 1.0 |
| warn | medium | No empty anchor textOUR-INVENTION On-page SEO our thresholds unless listed below Links with no visible text are invisible to users and crawlers. 1 empty anchor(s), e.g. href="https://vercel.com/oss" Give every link visible text, or an aria-label/title. | 1.0 |
| warn | low | Cache max-age is saneVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs A sub-5-minute TTL on the HTML document defeats most caching. max-age=0 Raise max-age for cacheable documents. | 1.0 |
| warn | low | Conditional-request validator presentVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs No ETag or Last-Modified, so revalidation always re-downloads. etag and last-modified both absent Add an ETag or Last-Modified header. | 1.0 |
| warn | low | Image count is manageableVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs 65 images | 1.0 |
| warn | low | Permissions-Policy is setVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs Absent; powerful browser features are open to any frame. permissions-policy absent | 1.0 |
| warn | low | Web app manifest is linkedVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs no manifest link Add <link rel="manifest" href="/manifest.webmanifest">. | 1.0 |
| warn | medium | Markdown/plain-text page variant offeredCOMMUNITY-CONVENTION AEO Infrastructure text/markdown is IANA-registered but no fetch contract is documented No .md / index.md variant returns markdown or plain text. https://nextjs.org/index.md -> HTTP 404 (text/html; charset=utf-8) Serve a .md or /index.md mirror, or honor Accept: text/markdown. | 0.5 |
| warn | low | FAQPage structured data presentVENDOR-DOCUMENTED AEO Infrastructure the FAQ rich result is retired; the schema.org type remains valid No FAQPage schema; without it, an answer engine must infer Q&A pairs. Organization, SoftwareApplication, WebSite Add FAQPage JSON-LD for the questions this page answers. | 0.5 |
| warn | low | No repeated headingsPROXY AEO Content & Trust adjacent measurement unless listed below 4 heading(s) repeat verbatim. x2: more Deduplicate repeated headings. | 0.5 |
| warn | low | Outbound links carry appropriate relOUR-INVENTION On-page SEO our thresholds unless listed below Outbound links that are paid or untrusted should be nofollow/sponsored. 74/74 outbound link(s) are followed (no rel) Add rel="nofollow" or rel="sponsored" where appropriate. | 0.5 |
| warn | low | og:image is absolute with dimensionsOUR-INVENTION On-page SEO our thresholds unless listed below Social platforms need an absolute URL and known dimensions to render the image immediately. https://h8dxkfmaphn8o0p3.public.blob.vercel-storage.com/nextjs/twitter-card.png (missing og:image:width/height) Use an absolute https URL and add og:image:width/height. | 0.5 |
| warn | low | Inline styles/scripts are minimalOUR-INVENTION On-page SEO our thresholds unless listed below Heavy inline styling/scripting bloats HTML and blocks caching. 27 inline script(s), 0 <style> block(s), 166 style attr(s) Move styles/scripts to external, cacheable files. | 0.5 |
| warn | low | og:image dimensions are declaredVENDOR-DOCUMENTED Structured Data schema.org and Google structured data docs og:image:width / og:image:height are missing. absence check: nothing matching this test was found on the page (see the detail line for what was searched) Add og:image:width and og:image:height. | 0.5 |
| warn | low | security.txt is publishedVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs No security.txt; security researchers have no contact route. /.well-known/security.txt and /security.txt both absent Publish /.well-known/security.txt per RFC 9116. | 0.5 |
| warn | low | theme-color meta is setVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs no theme-color meta Add <meta name="theme-color" content="#...">. | 0.5 |
| warn | low | Apple touch icon is declaredVENDOR-DOCUMENTED Technical & Delivery web.dev and MDN guidance, security header specs no apple-touch-icon link Add an apple-touch-icon link for iOS home-screen installs. | 0.5 |
| result | severity | check | wt |
|---|---|---|---|
| fail | medium | Legal & trust pages are reachableVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 0 of 7 common paths return 200. privacy-policy=404 privacy=404 terms=404 terms-of-service=404 cookie-policy=404 contact=404 about=404 Publish privacy, terms and contact pages and link them site-wide. | 1.5 |
| warn | low | HTML document weight is reasonableVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Measured via decoded text re-encoded. 366713 bytes | 1.5 |
| warn | low | Render-blocking stylesheet count is lowVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 5 render-blocking stylesheet(s) in <head> Inline critical CSS or split stylesheets by media. | 1.5 |
| warn | low | DOM size is reasonableVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 2488 elements Trim widget-heavy markup. | 1.5 |
| warn | low | 404 page is a styled HTML pageVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 404 has a title but no obvious navigation back into the site. HTTP 404; title present, nav absent Add nav/links to the 404 template. | 1.5 |
| warn | low | Cache max-age is saneVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs A sub-5-minute TTL on the HTML document defeats most caching. max-age=0 Raise max-age for cacheable documents. | 1.0 |
| warn | low | Conditional-request validator presentVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs No ETag or Last-Modified, so revalidation always re-downloads. etag and last-modified both absent Add an ETag or Last-Modified header. | 1.0 |
| warn | low | Image count is manageableVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 65 images | 1.0 |
| warn | low | Permissions-Policy is setVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Absent; powerful browser features are open to any frame. permissions-policy absent | 1.0 |
| warn | low | Web app manifest is linkedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs no manifest link Add <link rel="manifest" href="/manifest.webmanifest">. | 1.0 |
| warn | low | security.txt is publishedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs No security.txt; security researchers have no contact route. /.well-known/security.txt and /security.txt both absent Publish /.well-known/security.txt per RFC 9116. | 0.5 |
| warn | low | theme-color meta is setVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs no theme-color meta Add <meta name="theme-color" content="#...">. | 0.5 |
| warn | low | Apple touch icon is declaredVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs no apple-touch-icon link Add an apple-touch-icon link for iOS home-screen installs. | 0.5 |
| pass | info | Time to first byte is within budgetVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs HEAD request to the final URL; includes connect + TLS + server processing and excludes body download, so it is a close proxy for TTFB. Full document (GET, body included) took 855.8 ms. Single unauthenticated request from the audit host; network latency dominates, so this band is a sanity check, not a ranking cutoff. 103.2 ms (HEAD) | 2.0 |
| pass | info | HTML is served compressedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Compression negotiated with the audit client's Accept-Encoding (requests default gzip/deflate); a brotli-only server may appear uncompressed here even though real browsers get br. content-encoding: gzip | 2.0 |
| pass | info | Content-Type is text/htmlVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs text/html; charset=utf-8 | 2.0 |
| pass | info | Strict-Transport-Security set with long max-ageVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs max-age=31536000; includeSubDomains; preload | 2.0 |
| pass | info | Viewport meta is correctVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs width=device-width, initial-scale=1 | 2.0 |
| pass | info | Cache-Control header is presentVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs public, max-age=0, must-revalidate | 1.5 |
| pass | info | CSS assets are compressedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 5/5 compressed (gzip) | 1.5 |
| pass | info | JS assets are compressedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 5/5 compressed (gzip) | 1.5 |
| pass | info | No render-blocking scripts in <head>VENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 0 blocking external script(s) in <head> Add defer (or async) to head scripts. | 1.5 |
| pass | info | Images use modern formatsVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 0/65 unoptimised | 1.5 |
| pass | info | Third-party script domains are limitedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs none | 1.5 |
| pass | info | Content-Security-Policy is setVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs default-src 'self' nextjs.org *.nextjs.org vercel.com *.vercel.com *.vercel.sh vercel.live wss://*.vercel.com wss://*.nextjs.org localhost:*;script-src 'self' 'unsafe-inline' www.google.com www.goo... | 1.5 |
| pass | info | X-Content-Type-Options: nosniffVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs nosniff | 1.5 |
| pass | info | Framing is controlledVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs DENY | 1.5 |
| pass | info | Server banner hides its versionVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs server: Vercel; x-powered-by: Next.js | 1.5 |
| pass | info | Document declares a DOCTYPEVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs | 1.0 |
| pass | info | Charset is declaredVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs charset=utf-8 (header) | 1.0 |
| pass | info | External scripts use async or deferVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Body-end synchronous scripts are a legitimate pattern; flagged only as a count. no external scripts | 1.0 |
| pass | info | Images declare width & heightVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 65/65 have width+height | 1.0 |
| pass | info | Below-fold images are lazy-loadedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs 33/65 images use loading=lazy | 1.0 |
| pass | info | Third-party iframes are limitedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs none | 1.0 |
| pass | info | Referrer-Policy is setVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs origin-when-cross-origin | 1.0 |
| info | info | HTTP protocol version (1.1 / 2 / 3)VENDOR-DOCUMENTED web.dev and MDN guidance, security header specs The negotiated protocol version is not exposed by the fetch layer (response headers do not carry it). Report only; not measured. not observable via ctx.headers | 0 |
| info | info | HTML vs referenced-asset transfer weightVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Only the first 5 CSS and 5 JS assets were fetched, and sizes are content-length as-served (i.e. already compressed when an encoding is present). Nothing is estimated. HTML 366713 bytes; 0 measured asset(s) 0 bytes | 0 |
| info | info | humans.txt is publishedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs No humans.txt (an optional credits file). /humans.txt = 404 | 0 |
| info | info | Service worker is registeredVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs No serviceWorker.register() call found in inline scripts; not every site is a PWA. no service worker registration string | 0 |
| info | info | Tap targets are large enoughVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Requires a rendered layout; not measurable from static HTML. | 0 |
| info | info | Base font size is legible on mobileVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Requires rendering; not measurable from static HTML. | 0 |
| info | info | CDN / edge location hintVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Presence of an edge/CDN marker header suggests a proxy in front. x-vercel-id: bom1::pdx1::9pqbf-1790591829855-fce843f52a10 | 0 |
| info | info | Trailing-slash variant canonicalisesVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs Audited URL is the root; no trailing-slash variant to test. | 0 |
| info | info | Third-party origins are preconnectedVENDOR-DOCUMENTED web.dev and MDN guidance, security header specs No third-party origins to preconnect. | 0 |
| result | severity | check | wt |
|---|---|---|---|
| warn | medium | Definition/summary present in the first screenPROXY adjacent measurement unless listed below First 2 paragraphs carry only 34 words — little to lift for a direct answer. Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components. Open with a 1-2 sentence definition or summary of the topic. | 3.0 |
| warn | medium | Claim density and specificityVENDOR-DOCUMENTED Princeton GEO found statistics addition among the strongest methods 10 numbers, 0 percentages, 1 dates, 3 unit mentions and 0 currency amounts. Thin on specific figures — GEO 'Statistics Addition' (~+37%) and Bing's 'support claims with evidence' favour content dense with data. 4 specific citable figures Add concrete numbers, percentages, dates, units or currency amounts. | 2.0 |
| warn | medium | Topic vocabulary is echoed in the answer contentVENDOR-DOCUMENTED prompt-content alignment was the dominant on-page lever 2/4 distinctive title/H1 terms reappear in the answering content; missing: framework, vercel. (Proxy: token overlap for semantic prompt-content alignment.) found: react, next | missing: framework, vercel Echo the page's own topic terms in the lead and answer paragraphs. | 2.0 |
| warn | low | Alt text is descriptivePROXY adjacent measurement unless listed below 15 of 65 image(s) have empty or filename-style alt text. (empty alt), (empty alt), (empty alt), (empty alt), (empty alt) Describe images in alt text instead of leaving filenames. | 1.0 |
| warn | low | No repeated headingsPROXY adjacent measurement unless listed below 4 heading(s) repeat verbatim. x2: more Deduplicate repeated headings. | 0.5 |
| pass | info | Page has substantive contentPROXY adjacent measurement unless listed below 1235 words of body text | 2.0 |
| pass | info | Freshness is verifiableVENDOR-DOCUMENTED freshness is a documented signal, modest in effect 1 freshness signal(s) present. updated on new releases and features, guides, and case studies | 2.0 |
| pass | info | Page text is quotable (snippet control)VENDOR-DOCUMENTED nosnippet, max-snippet and data-nosnippet are documented controls No nosnippet / max-snippet / data-nosnippet directive found — the page text is eligible to be quoted. | 2.0 |
| pass | info | Citation crawlers can access the siteVENDOR-DOCUMENTED per-vendor crawler documentation No citation crawler is blocked in robots.txt (or no matching group, which defaults to allowed). OAI-SearchBot:not_mentioned; PerplexityBot:not_mentioned; Claude-SearchBot:not_mentioned; ChatGPT-User:not_mentioned; Perplexity-User:not_mentioned; Amzn-SearchBot:not_mentioned; Meta-WebIndexer:not_mentioned; Googlebot:not_mentioned | 2.0 |
| pass | info | Content is accessible to answer enginesVENDOR-DOCUMENTED documented property Structured data declares `isAccessibleForFree: true` — the text is explicitly readable. isAccessibleForFree: true | 2.0 |
| pass | info | Machine-readable freshnessVENDOR-DOCUMENTED lastmod and HTTP validators are the machine-readable freshness signals A machine-readable freshness signal (HTTP Last-Modified header and/or sitemap <lastmod>) is present — the machine-readable half of freshness, which Bing documents as a signal. 2026-04-05T20:10:13.516Z | 1.5 |
| pass | info | Social profile links presentPROXY adjacent measurement unless listed below 2 social profile(s) linked. github.com, x.com | 1.5 |
| pass | info | Organization name is consistentPROXY adjacent measurement unless listed below The Organization schema name appears in the page title or footer. schema=Vercel | title=Next.js by Vercel - The React Framework | 1.5 |
| pass | info | H1 topic terms appear in the first paragraphPROXY adjacent measurement unless listed below 1 H1 term(s) also appear in the opening paragraph. H1: The React Framework for the Web | terms: React | 1.5 |
| pass | info | Visible 'last updated' text presentPROXY adjacent measurement unless listed below A visible freshness note was found on the page. updated on new releases and features, guides, and case studies | updated on new releases and features, guides, and case studies | 1.0 |
| pass | info | Outbound citations existVENDOR-DOCUMENTED outbound linking is documented practice 60 external link(s) to 17 domain(s). ai-sdk.dev, bsky.app, chat-sdk.dev, deepsec.sh, eve.dev, flags-sdk.dev, justbash.dev, nitro.build | 1.0 |
| pass | info | No repeated sentencesPROXY adjacent measurement unless listed below No sentence (≥8 words) repeats verbatim. | 1.0 |
| pass | info | Author page is reachablePROXY adjacent measurement unless listed below https://nextjs.org/team | 0.5 |
| pass | info | External links are followedPROXY adjacent measurement unless listed below 60 followed vs 0 nofollow/sponsored/ugc. | 0.5 |
| pass | info | Sentence length is reasonablePROXY adjacent measurement unless listed below avg 17.4 words/sentence; longest (49 words): Built on a foundation of fast, production-grade tooling Get started in seconds The framework of choice when it matters Customer Testimoni... | 0.5 |
| info | info | Headings phrased as questionsOUR-INVENTION Q&A formatting alone did not improve absorption 1 heading(s) end in '?'. Not scored: Q&A *format* alone does not improve citation absorption (arXiv 2604.25707, -5.7%); alignment with real question phrasing is what matters. What's in Next.js? | 0 |
| info | info | FAQ-style Q&A pair presentOUR-INVENTION format alone does not help; alignment does, so this is measured but not scored 1 heading-ending-in-'?' followed by an answer paragraph. Not scored: Q&A *formatting* alone does not improve absorption (arXiv 2604.25707); alignment with the question matters, not the format. Q: What's in Next.js? → A: Everything you need to build great products on the web. | 0 |
| info | info | List/table densityPROXY adjacent measurement unless listed below 34 <li> + 0 <tr> = 34 structured items per 1235 words → 27.5 per 1000 words. | 0 |
| info | info | Paragraph length is scannableOUR-INVENTION our metric, no evidence it affects citation 12 paragraphs; average 10.8 words, median 9.5 words. Not scored: no study ties paragraph length to AI citation; Google states chunking is not required. | 0 |
| info | info | No single oversized paragraphOUR-INVENTION our metric, no evidence Longest paragraph is 24 words. Not scored: paragraph size is not a documented citation driver. Used by some of the world's largest companies, Next.js enables you to create high-quality web applications with the power of React components. | 0 |
| info | info | TL;DR / summary block presentOUR-INVENTION no evidence No TL;DR / summary block detected. Not scored: summary blocks are a weak, unconfirmed citation lever. | 0 |
| info | info | Published date is declaredPROXY adjacent measurement unless listed below No datePublished / article:published_time signal found. | 0 |
| info | info | Modified date is declaredPROXY adjacent measurement unless listed below No dateModified / article:modified_time signal found. | 0 |
| info | info | HTTP Last-Modified header presentPROXY adjacent measurement unless listed below No Last-Modified response header. | 0 |
| info | info | Author byline is detectablePROXY author signals showed an inverse correlation in one large study; scoring this would mislead No author signal found. Not scored: bylines are human-trust hygiene, not an AI-citation lever (Seer: inverse correlation). | 0 |
| info | info | About page is reachablePROXY adjacent measurement unless listed below No /about, /about-us or /company page responded 200. Not scored: EEAT surface is not a documented citation driver. probed /about /about-us /company /about.html — none returned 200 | 0 |
| info | info | Contact page is reachablePROXY adjacent measurement unless listed below No /contact, /contact-us, /support or /help page responded 200. Not scored: EEAT surface is not a citation driver. | 0 |
| info | info | Contact methods are discoverablePROXY adjacent measurement unless listed below No email, phone or street-address pattern found. Not scored: EEAT hygiene, not a citation driver. | 0 |
| info | info | Physical address presentPROXY adjacent measurement unless listed below No street address or Organization-address schema found (expected for local/brick-and-mortar businesses). | 0 |
| info | info | Privacy policy is reachablePROXY adjacent measurement unless listed below No /privacy or /privacy-policy page responded 200. Not scored: EEAT hygiene, not a citation driver. | 0 |
| info | info | Terms page is reachablePROXY adjacent measurement unless listed below No /terms or /terms-of-service page responded 200. Not scored: EEAT hygiene, not a citation driver. | 0 |
| info | info | Refund/returns policy is reachablePROXY adjacent measurement unless listed below No Product/Offer schema or cart/checkout cues, so a refund policy was not expected. | 0 |
| info | info | Cites high-authority sourcesOUR-INVENTION the favoured-domain list is ours External links exist but none match the fixed high-authority list. Not scored: the list is arbitrary, not evidence-based. ai-sdk.dev, bsky.app, chat-sdk.dev, deepsec.sh, eve.dev, flags-sdk.dev, justbash.dev, nitro.build | 0 |
| info | info | Readability is computableOUR-INVENTION no evidence that Flesch scores relate to citation Flesch Reading Ease 56.6, Flesch-Kincaid grade 9.7 (syllable-counted, 261 words / 15 sentences). Not scored: readability is human hygiene, not a documented AI-citation lever. | 0 |
| info | info | Top topic termsPROXY adjacent measurement unless listed below Top 10 terms after stopword removal: next (36), server (19), react (17), data (12), built (11), support (11), vercel (11), web (11), including (10), client (9). | 0 |
| info | info | Primary language detectedPROXY adjacent measurement unless listed below Latin-script / English (en) — 6595 Latin chars vs 0 Arabic-script | 0 |
| info | info | FAQ/Q&A schema presentPROXY adjacent measurement unless listed below No FAQPage/QAPage schema (a bonus, not required). | 0 |
| info | info | Attributable entity summaryPROXY adjacent measurement unless listed below Present: author=(none); organization schema=Vercel; publisher=Vercel; sameAs count=10. Missing: author. | 0 |
| result | severity | check | wt |
|---|---|---|---|
| warn | medium | No empty anchor textOUR-INVENTION our thresholds unless listed below Links with no visible text are invisible to users and crawlers. 1 empty anchor(s), e.g. href="https://vercel.com/oss" Give every link visible text, or an aria-label/title. | 1.0 |
| warn | low | Outbound links carry appropriate relOUR-INVENTION our thresholds unless listed below Outbound links that are paid or untrusted should be nofollow/sponsored. 74/74 outbound link(s) are followed (no rel) Add rel="nofollow" or rel="sponsored" where appropriate. | 0.5 |
| warn | low | og:image is absolute with dimensionsOUR-INVENTION our thresholds unless listed below Social platforms need an absolute URL and known dimensions to render the image immediately. https://h8dxkfmaphn8o0p3.public.blob.vercel-storage.com/nextjs/twitter-card.png (missing og:image:width/height) Use an absolute https URL and add og:image:width/height. | 0.5 |
| warn | low | Inline styles/scripts are minimalOUR-INVENTION our thresholds unless listed below Heavy inline styling/scripting bloats HTML and blocks caching. 27 inline script(s), 0 <style> block(s), 166 style attr(s) Move styles/scripts to external, cacheable files. | 0.5 |
| pass | info | Page has a <title>VENDOR-REQUIRED a title is used to generate the title link "Next.js by Vercel - The React Framework" | 3.0 |
| pass | info | Exactly one H1STANDARDS-BACKED multiple h1 is valid HTML; no documented count rule | 2.0 |
| pass | info | Viewport meta is setOUR-INVENTION our thresholds unless listed below width=device-width, initial-scale=1 | 2.0 |
| pass | info | Heading hierarchy has no skipsVENDOR-DOCUMENTED logical hierarchy documented by Bing | 1.5 |
| pass | info | Image alt coverageSTANDARDS-BACKED WCAG 1.1.1 requires text alternatives 65/65 images have descriptive or decorative (empty) alt text (100.0%) | 1.5 |
| pass | info | Open Graph tags are completeOUR-INVENTION our thresholds unless listed below og:title, og:description, og:image, og:url, og:type all present | 1.5 |
| pass | info | First 100 words contain real contentVENDOR-DOCUMENTED surface key information early Opens with "Next.js by Vercel - The React Framework Latest The framework for building agents Frameworks Next.js Svelte Nuxt Nitro..." | 1.0 |
| pass | info | Images declare width/heightVENDOR-DOCUMENTED layout shift guidance Every image carries explicit dimensions. | 1.0 |
| pass | info | Page has internal linksOUR-INVENTION our thresholds unless listed below 24 unique internal link(s) | 1.0 |
| pass | info | Anchors are descriptiveVENDOR-DOCUMENTED relevant anchor text documented by Bing | 1.0 |
| pass | info | Character encoding is declaredOUR-INVENTION our thresholds unless listed below utf-8 | 1.0 |
| pass | info | No deprecated HTML tagsOUR-INVENTION our thresholds unless listed below | 1.0 |
| pass | info | Only one meta descriptionOUR-INVENTION our thresholds unless listed below | 0.5 |
| pass | info | Meta description is presentVENDOR-DOCUMENTED documented as a suggestion Google sometimes uses Next.js by Vercel is the full-stack React framework for the web. | 0.5 |
| pass | info | Below-the-fold images lazy-loadOUR-INVENTION our thresholds unless listed below 33/65 images lazy-loading | 0.5 |
| pass | info | Twitter card is configuredOUR-INVENTION our thresholds unless listed below twitter:card=summary_large_image with image | 0.5 |
| info | info | Title length is in a healthy bandOUR-INVENTION Google documents no limit; truncation is by device width Title is 39 characters. Google documents no limit; the title link is truncated in Search results as needed, typically to fit the device width (https://developers.google.com/search/docs/appearance/title-link). The 30-65 character band is ours, not Google's. | 0 |
| info | info | Title is not a copy of the H1OUR-INVENTION no documentation requires the title to differ from the h1 Title and H1 differ. No documentation requires the title to differ from the H1. | 0 |
| info | info | Meta description length is in bandOUR-INVENTION no documented limit Meta description is 64 characters. Google documents no limit; the snippet is truncated in Search results as needed, typically to fit the device width (https://developers.google.com/search/docs/appearance/snippet). The 70-160 character band is ours. | 0 |
| info | info | H1 length is reasonableOUR-INVENTION our band, nothing documents it H1 is 31 characters. The 3-60 character band is ours; nothing documents it. | 0 |
| info | info | Heading count is saneOUR-INVENTION our threshold 19 heading(s) on the page. The <=30 threshold is ours; no engine documents a heading-count limit. | 0 |
| info | info | Page word countVENDOR-DOCUMENTED thin content guidance exists, with no number 1235 words in the main visible text. No universal minimum; very thin pages are typically under ~300 words but this is not a ranking law. | 0 |
| info | info | Text-to-HTML ratioOUR-INVENTION our threshold 2.2% text-to-HTML ratio. The >=10% threshold is ours; no engine documents a text-to-HTML ratio requirement. | 0 |
| info | info | A clear primary CTA is presentOUR-INVENTION conversion practice, not a search signal Found CTA copy like "Get Started". A call to action is conversion practice, not a ranking factor. | 0 |
| info | info | Title/description share terms with the H1OUR-INVENTION our thresholds unless listed below H1 "The React Framework for the Web" shares 3 of 5 terms with the title and 5 with the description. | 0 |
| info | info | Content language vs lang attributeOUR-INVENTION our thresholds unless listed below lang="en"; dominant script in text is Latin (Latin 6595, Arabic 0, Hebrew 0, CJK 0); matches the declared language. | 0 |
| info | info | Modern image formats in useVENDOR-DOCUMENTED format guidance No raster images (webp/avif/png/jpg) detected; possibly SVG or none. | 0 |
| info | info | Orphan-page signal (links vs sitemap)OUR-INVENTION our thresholds unless listed below Page links to 24 internal URL(s); the sitemap lists 683 URL(s). A page that links to nothing is a dead end; true orphan status (nothing links to THIS page) cannot be measured from here. | 0 |
| info | info | target=_blank links use rel=noopenerOUR-INVENTION a security concern, not a search signal 0/76 target=_blank link(s) missing rel=noopener. This is a security concern (reverse-tabnabbing), not a search signal. | 0 |
| info | info | theme-color is declaredOUR-INVENTION our thresholds unless listed below No theme-color meta tag (affects mobile browser chrome only). | 0 |
| info | info | Meta keywords tagOUR-INVENTION our thresholds unless listed below No meta keywords tag (fine; it is largely ignored). | 0 |
| info | info | RTL pages declare dir="rtl"OUR-INVENTION our thresholds unless listed below lang="en" is not RTL; dir check not applicable. | 0 |
| info | info | Apple touch icon is declaredOUR-INVENTION our thresholds unless listed below No apple-touch-icon link (affects iOS home-screen bookmarks). | 0 |
| result | severity | check | wt |
|---|---|---|---|
| warn | medium | Markdown/plain-text page variant offeredCOMMUNITY-CONVENTION text/markdown is IANA-registered but no fetch contract is documented No .md / index.md variant returns markdown or plain text. https://nextjs.org/index.md -> HTTP 404 (text/html; charset=utf-8) Serve a .md or /index.md mirror, or honor Accept: text/markdown. | 0.5 |
| warn | low | FAQPage structured data presentVENDOR-DOCUMENTED the FAQ rich result is retired; the schema.org type remains valid No FAQPage schema; without it, an answer engine must infer Q&A pairs. Organization, SoftwareApplication, WebSite Add FAQPage JSON-LD for the questions this page answers. | 0.5 |
| pass | info | robots.txt does not blanket-block all AI crawlersSTANDARDS-BACKED blanket disallow semantics | 3.0 |
| pass | info | Citation bots are not blockedVENDOR-DOCUMENTED training crawlers and citation crawlers behave differently; Google-Extended does not control AI Overviews None of the 12 citation bots are blocked at the root. | 2.0 |
| pass | info | Primary text present in raw HTMLVENDOR-DOCUMENTED JS rendering guidance; answer crawlers often do not execute scripts 1235 words present in the raw HTML. 1235 words | 2.0 |
| pass | info | Homepage is served as text/htmlSTANDARDS-BACKED content type semantics Answer engines can parse an HTML document. text/html; charset=utf-8 | 1.0 |
| pass | info | Sitemap is plain XML (no JS)STANDARDS-BACKED sitemap protocol 683 URL(s) in plain XML. application/xml; charset=utf-8 · https://nextjs.org/sitemap.xml | 1.0 |
| pass | info | Content served without a consent cookieCOMMUNITY-CONVENTION plausible, not documented The server set no cookies, so no cookie-gated consent wall blocks the first bytes. | 1.0 |
| pass | info | Schema.org structured data presentCOMMUNITY-CONVENTION community practice unless listed below Structured data gives answer engines a machine-readable page. Organization, SoftwareApplication, WebSite | 1.0 |
| pass | info | JSON-LD blocks are validCOMMUNITY-CONVENTION community practice unless listed below 1 JSON-LD block(s) parsed cleanly. | 1.0 |
| pass | info | Meta description presentVENDOR-DOCUMENTED snippet suggestion, not a ranking requirement Answer engines use the description as a citation snippet. Next.js by Vercel is the full-stack React framework for the web. | 1.0 |
| pass | info | Page has an H1 headingSTANDARDS-BACKED HTML permits multiple h1 elements; no engine documents a count rule The React Framework for the Web | 1.0 |
| pass | info | Character encoding is declaredSTANDARDS-BACKED character encoding declaration from content-type header | 0.5 |
| pass | info | llms.txt is presentCOMMUNITY-CONVENTION A proposal by Answer.AI, not a standard of any body. Google has stated it does not use it. 13409 bytes; first line quoted # Next.js | 0.5 |
| pass | info | llms.txt is served as text/plain or text/markdownCOMMUNITY-CONVENTION no fetch contract is documented by any vendor text/plain; charset=utf-8 | 0.5 |
| pass | info | llms.txt parses as markdownCOMMUNITY-CONVENTION format is the proposal's own convention 145 markdown construct(s) detected # Next.js | 0.5 |
| pass | info | llms.txt has an H1COMMUNITY-CONVENTION the proposal's shape, not a requirement # N | 0.5 |
| pass | info | llms.txt contains a markdown linkCOMMUNITY-CONVENTION the proposal's shape, not a requirement 57 markdown link(s) [/docs/llms-full.txt](https://nextjs.org/docs/llms-full.txt) | [/docs/llms.txt](https://nextjs.org/docs/llms.txt) | [/.well-known/ai-catalog.json](https://nextjs.org/.well-known/ai-catalog.json) | 0.5 |
| pass | info | llms.txt is under our heuristic size limitOUR-INVENTION the 512KB ceiling is ours 13423 bytes (heuristic limit 524288; the llmstxt.org spec gives no number, only 'small enough to fit in context'). | 0.5 |
| pass | info | Accept: text/markdown negotiation honoredCOMMUNITY-CONVENTION community practice The server returns a markdown/plain content-type when asked. Accept: text/html -> 'text/html' | Accept: text/markdown -> 'text/markdown' | 0.5 |
| pass | info | FAQ/Q&A block present in HTMLOUR-INVENTION no documented effect on citation FAQ signal detected via details. 1 <details>, 0 faq-classed element(s) | 0.5 |
| pass | info | Paragraphs are short (median word count)OUR-INVENTION our metric, no documented threshold Short paragraphs are easier for an answer engine to lift. median 3 words across 23 paragraphs | 0.5 |
| pass | info | Opening paragraph is a direct answer (<60 words)OUR-INVENTION our metric, no documented threshold A short opening paragraph reads as a direct answer. Latest | 0.5 |
| pass | info | XML feed availableSTANDARDS-BACKED feed format is standard; the citation benefit is not documented An RSS/Atom feed lets answer engines watch for new content. https://nextjs.org/feed.xml (application/rss+xml; charset=utf-8) | 0.5 |
| pass | info | Open Graph title and description presentVENDOR-DOCUMENTED social preview, not a search signal Next.js by Vercel - The React Framework | 0.5 |
| info | info | Citation meta tags presentVENDOR-DOCUMENTED scholarly indexing only No citation_* / Dublin Core meta tags. | 0.5 |
| info | info | llms-full.txt full-content exportCOMMUNITY-CONVENTION community practice unless listed below No /llms-full.txt (HTTP 404). Optional full-content export. | 0 |
| info | info | AI crawler access matrixCOMMUNITY-CONVENTION community practice unless listed below Resolved from robots.txt for 24 agents (12 citation, 12 training/data). GPTBot: allowed; ClaudeBot: allowed; Google-Extended: allowed; Applebot-Extended: allowed; CCBot: allowed; Bytespider: allowed; Meta-ExternalAgent: allowed; Amazonbot: allowed; cohere-ai: allowed; Diffbot: allowed; Timpibot: allowed; ImagesiftBot: allowed; OAI-SearchBot: allowed; ChatGPT-User: allowed; PerplexityBot: allowed; Perplexity-User: allowed; Claude-SearchBot: allowed; Claude-User: allowed; Googlebot: allowed; Applebot: allowed; DuckAssistBot: allowed; YouBot: allowed; Amzn-SearchBot: allowed; Meta-WebIndexer: allowed | 0 |
| info | info | Training/data bots are blockedVENDOR-DOCUMENTED blocking a training crawler is a licensing choice, not an AEO loss None of the 12 training/data bots are blocked. | 0 |
| info | info | llms.txt references the audited pageCOMMUNITY-CONVENTION community practice unless listed below /llms.txt links to the audited page (/). | 0 |
| info | info | Definition lists presentCOMMUNITY-CONVENTION community practice unless listed below No <dl> term/definition pairs. | 0 |
| info | info | Tables presentCOMMUNITY-CONVENTION community practice unless listed below No <table> elements. | 0 |
| info | info | Ordered lists presentCOMMUNITY-CONVENTION community practice unless listed below No <ol> ordered-list elements. | 0 |
| info | info | Feed probe matrixCOMMUNITY-CONVENTION community practice unless listed below Result of probing page <link> tags and common feed paths. https://nextjs.org/feed -> HTTP 404 (text/html; charset=utf-8); https://nextjs.org/rss.xml -> HTTP 404 (text/html; charset=utf-8); https://nextjs.org/atom.xml -> HTTP 404 (text/html; charset=utf-8); https://nextjs.org/feed.xml -> HTTP 200 (application/rss+xml; charset=utf-8); https://nextjs.org/rss -> HTTP 404 (text/html; charset=utf-8) | 0 |
| info | info | ai.txt security policy publishedCOMMUNITY-CONVENTION community practice unless listed below Optional machine-readable AI-usage policy. /ai.txt -> HTTP 404; /.well-known/ai.txt -> HTTP 404 | 0 |
| result | severity | check | wt |
|---|---|---|---|
| warn | low | og:image dimensions are declaredVENDOR-DOCUMENTED schema.org and Google structured data docs og:image:width / og:image:height are missing. absence check: nothing matching this test was found on the page (see the detail line for what was searched) Add og:image:width and og:image:height. | 0.5 |
| pass | info | Organization: required properties presentVENDOR-DOCUMENTED Google documents no required properties for the logo feature 1 Organization node(s) complete for the required properties. | 3.0 |
| pass | info | WebSite: required properties presentVENDOR-DOCUMENTED schema.org and Google structured data docs 1 WebSite node(s) complete for the required properties. | 3.0 |
| pass | info | All JSON-LD blocks parse as JSONVENDOR-DOCUMENTED schema.org and Google structured data docs | 2.0 |
| pass | info | JSON-LD structured data is presentVENDOR-DOCUMENTED structured data is recommended, never required in order to rank 1 JSON-LD block(s) parsed. Google does not require structured data in order to rank. | 1.5 |
| pass | info | Image, logo, url and @id values are absolute URLsVENDOR-DOCUMENTED full URLs recommended | 1.5 |
| pass | info | No deprecated or superseded typesVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.5 |
| pass | info | og:image is absolute and reachableVENDOR-DOCUMENTED schema.org and Google structured data docs https://h8dxkfmaphn8o0p3.public.blob.vercel-storage.com/nextjs/twitter-card.png no og:image declared in <head> | 1.5 |
| pass | info | Every JSON-LD block is an object or @graphVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.0 |
| pass | info | Every JSON-LD block declares @contextVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.0 |
| pass | info | Organization carries a sameAs identityVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.0 |
| pass | info | No conflicting duplicate schemaVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.0 |
| pass | info | og:url matches the canonicalVENDOR-DOCUMENTED schema.org and Google structured data docs | 1.0 |
| pass | info | @context points at schema.orgVENDOR-DOCUMENTED schema.org and Google structured data docs | 0.5 |
| pass | info | sameAs values are absolute URLsVENDOR-DOCUMENTED schema.org and Google structured data docs | 0.5 |
| pass | info | og:type matches the contentVENDOR-DOCUMENTED schema.org and Google structured data docs og:type=website | 0.5 |
| pass | info | twitter:card value is validVENDOR-DOCUMENTED schema.org and Google structured data docs twitter:card=summary_large_image | 0.5 |
| pass | info | twitter:image is presentVENDOR-DOCUMENTED schema.org and Google structured data docs | 0.5 |
| info | info | JSON-LD block countVENDOR-DOCUMENTED schema.org and Google structured data docs 1 JSON-LD block(s) on the page. | 0 |
| info | info | Microdata usageVENDOR-DOCUMENTED schema.org and Google structured data docs 0 element(s) with itemscope. Site does not use Microdata. | 0 |
| info | info | RDFa usageVENDOR-DOCUMENTED schema.org and Google structured data docs 0 element(s) with @typeof. Site does not use RDFa. | 0 |
| info | info | Schema types found on the pageVENDOR-DOCUMENTED schema.org and Google structured data docs Organization, SoftwareApplication, WebSite | 0 |
| info | info | WebSite declares an alternateNameVENDOR-DOCUMENTED alternateName is documented for site names No alternateName on WebSite node(s). Google's site-names feature uses alternateName as an optional fallback if the preferred name is not selected; it is recommended, not required. missing on WebSite node(s) [1] | 0 |
| info | info | Organization declares a logoVENDOR-DOCUMENTED Google documents no required properties for the logo feature No logo on Organization node(s). Google documents no required properties for the logo feature; a logo is recommended. missing on Organization node(s) [1] | 0 |
| info | info | FAQ questions match visible page contentVENDOR-REQUIRED markup must match visible content No FAQPage questions to compare. | 0 |
| info | info | Offer prices match visible page contentVENDOR-DOCUMENTED schema.org and Google structured data docs No Offer nodes to compare. | 0 |
| info | info | Article headline matches the page h1VENDOR-DOCUMENTED schema.org and Google structured data docs No Article headline and/or h1 to compare. | 0 |
| result | severity | check | wt |
|---|---|---|---|
| pass | info | Served over HTTPSSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 3.0 |
| pass | info | Homepage returns HTTP 200STANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 3.0 |
| pass | info | robots.txt does not block the whole siteSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 3.0 |
| pass | info | Canonical link is declaredSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs https://nextjs.org | 3.0 |
| pass | info | Page is not marked noindexSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 3.0 |
| pass | info | XML sitemap is present and validSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs https://nextjs.org/sitemap.xml with 683 <loc> entries | 2.5 |
| pass | info | http:// redirects to https://STANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs http:// upgrades to https:// https://nextjs.org/ | 2.0 |
| pass | info | robots.txt existsSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs 40 bytes | 2.0 |
| pass | info | Canonical points at this pageSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 2.0 |
| pass | info | x-robots-tag does not block indexingSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 2.0 |
| pass | info | Missing pages return 404, not a soft 200STANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs Probe returned HTTP 404 | 2.0 |
| pass | info | Redirect chain is shortSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs 0 redirect(s) before the final document. | 1.5 |
| pass | info | robots.txt advertises a sitemapSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs https://nextjs.org/sitemap.xml | 1.5 |
| pass | info | www and non-www agree on the canonical hostSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 1.5 |
| pass | info | robots.txt is not an HTML error pageSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 1.0 |
| pass | info | Sitemap lists URLsSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs 683 URL(s) listed | 1.0 |
| pass | info | Homepage appears in the sitemapSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 1.0 |
| pass | info | Canonical is an absolute URLSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 1.0 |
| pass | info | html lang attribute is setSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs lang="en" | 1.0 |
| pass | info | URL length is reasonableSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs 19 characters | 1.0 |
| pass | info | Canonical URL has no tracking parametersSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 1.0 |
| pass | info | Redirects do not expose a default portSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 0.5 |
| pass | info | URL uses hyphens not underscoresSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 0.5 |
| pass | info | Hostname is lowercaseSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 0.5 |
| pass | info | Favicon is declaredSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs | 0.5 |
| info | info | hreflang annotations presentSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs No hreflang set. Fine for a single-language site, a gap for multi-locale. | 0 |
| info | info | ads.txt is publishedSTANDARDS-BACKED robots.txt protocol, sitemap protocol, W3C HTML and URL specs No ads.txt. Only relevant if you sell ad inventory. | 0 |