Geodocs.dev

URL Structure Best Practices for AI Search Citations

ShareLinkedIn

AI engines treat URLs as citation identifiers, not just retrieval pointers. Short kebab-case slugs, shallow depth, canonical handling of query parameters, consistent trailing slashes, and stable fragment IDs all increase the odds your URL is the one cited — and the one followed when a user clicks an AI-generated answer.

TL;DR

Use short kebab-case slugs (3-5 words), keep paths at 2-3 levels deep, declare a canonical for any URL with marketing or tracking parameters, pick one trailing-slash convention and enforce it with 301s, reserve #fragment for in-page jumps (not for distinct content). Never break a URL after publication. AI engines deduplicate and rank URLs differently than Google's blue links — Ahrefs found AI Mode and AI Overviews cite the same URL only ~13.7% of the time across overlapping queries (Search Engine Journal, 2025). URL stability is what makes a citation portable across engines.

Why URL structure matters for AI citations

A URL is the citation. When ChatGPT, Perplexity, Gemini, or Google AI Overviews attach a source to an answer, the URL is what readers click and what other AI engines cross-reference. Three properties drive citation behaviour:

  1. Parsability. AI engines extract structure from the URL itself — domain, section, slug — to determine topical category and freshness signals.
  2. Stability. Citations depreciate when URLs change. Engines re-crawl on different cadences; a URL that 301's mid-cycle can drop from one engine while still appearing in another.
  3. Deduplication. Engines collapse near-duplicates (with/without trailing slash, with/without ?ref=...) into a single canonical citation. The canonical you declare is the one they cite.

Independent analyses show AI engines do not simply re-rank Google: only ~12% of AI-cited URLs appear in Google's top 10 organic for the same query (ZipTie, 2026). Retrieval is its own pipeline, and clean URLs help your page survive every stage of it.

Slug design

The slug is the most-extracted segment of the URL. Best practice for AI search:

  • Length: 3-5 meaningful words. Long enough to disambiguate, short enough to stay under ~60-70 characters total URL length.
  • Format: kebab-case lowercase. Hyphens separate words; no underscores, no camelCase, no spaces. Search engines have treated hyphens as word boundaries since 2007, and AI engines follow the same convention.
  • Words: nouns and entity names. Match the canonical question or the canonical entity. Drop stopwords ("the", "a", "for") unless they are part of an entity name.
  • No dates unless the page is dated. /2024-q4-roadmap is fine; /2024-best-crm is a maintenance trap.
  • No category numbers. Pick stable terms; numeric IDs are opaque.
Bad slugBetter slug
/post?id=12345/url-structure-ai-search-best-practices
/2025BestCRM_Tools/best-crm-tools
/articles/what-is-the-difference-between-rss-and-atom/rss-vs-atom
/blog/this-is-our-new-feature-launch/feature-launch-q3-2026

Depth and hierarchy

Two to three path segments is the sweet spot:

  • 2 segments for top-level concepts: /technical/structured-data-for-ai-search.
  • 3 segments for sub-topics or series: /case-studies/saas/atlassian-aeo-rollout.
  • 4+ segments signal "deep archive" to AI engines and rank lower in retrieval.

Map each path segment to a hub: /technical/ is itself a citable page; /technical/structured-data-for-ai-search is a spoke that links back. AI engines that crawl the hub gain context for siblings — useful when one query fan-out branches into adjacent sub-queries.

Query parameters

LLMs and AI crawlers handle parameters inconsistently. Single Grain's analysis describes the practical pattern: tracking parameters (?utm_source=...) are usually stripped, but functional ones (?lang=en, ?page=2) are preserved (Single Grain, 2026). Two rules:

  1. Declare a canonical with for every variant. The canonical is what AI engines cite, regardless of which variant the user clicked.
  2. Use parameters only for state, not content. /products?id=42 is fragile; /products/42-widget-pro is citable. Reserve query strings for filters, sort orders, and tracking — never for core content identity.

Pages that accept arbitrary parameters (search results, faceted listings) should noindex parameter combinations and surface a small set of curated landing pages for AI engines to cite.

Trailing slashes

Pick one and enforce it. Both https://example.com/page and https://example.com/page/ resolve, but if both serve the same content with no canonical, AI engines may cite either form, splitting citation share. Conventions:

  • Trailing slash for "section" or "directory" routes (/technical/).
  • No trailing slash for "leaf" content (/technical/url-structure-ai-search-best-practices).
  • 301 the non-canonical variant so crawlers consolidate.

Whichever convention you pick, apply it consistently and serve a 301 (not 302) for the alternate form.

Fragment identifiers

The #section portion of a URL is invisible to most server-side analytics but very visible to AI engines, which use anchors for citation precision. Patterns to follow:

  • Add id attributes to H2 and H3 headings so the URL /page#how-it-works jumps to a specific section.
  • Use stable, semantic IDs. #how-it-works is good; #section-3 is fragile.
  • Do not route content via fragment. Single-page apps that load distinct content based on #/route are invisible to most AI crawlers; render the same content at a real URL.

When AI engines cite a long-form article, they often cite the URL with a fragment to a specific section. If your IDs are stable, the citation lands the reader on the right paragraph; if you renumber, citations break silently.

URL stability rules

Once published, a URL should never change without a redirect plan. Practical guardrails:

  • Treat the URL as identity. If the title changes, do not re-slug. AI engines that have already cached the URL will keep citing it.
  • 301 every move. Keep the redirect alive indefinitely; AI crawlers re-validate citations on long cadences (weeks to months).
  • Avoid redirect chains. AI crawlers commonly abandon chains beyond two hops.
  • Watch for accidental 404s. A returned 404 on a previously cited URL often translates into the citation being dropped at the next crawl.

IDN and non-ASCII characters

Internationalized Domain Names (IDN) and non-ASCII slug characters work but introduce risk:

  • Punycode-encode the domain at the registrar level (xn--...).
  • Percent-encode non-ASCII slug characters for portability.
  • For multi-language sites, prefer subdirectories (/de/ rather than IDN domains) plus hreflang for AI engines that respect it.

Common mistakes that hurt AI citations

  • Inconsistent trailing slashes split citation share between two near-duplicates.
  • Marketing-tracking parameters in the canonical link, fragmenting citation telemetry.
  • Generic slugs like /post-1234 that strip topical signal.
  • Renumbered fragment IDs that silently break long-tail citations.
  • Multi-hop redirect chains that AI crawlers abandon.
  • Fragment-based routing on SPAs that hides content from AI bots.

How to audit your URLs

  1. Crawl the site with Screaming Frog or Sitebulb and export every URL with status code, canonical, and .</li> <li>Filter for parameters, multiple trailing-slash variants, and 4+ depth.</li> <li>Spot-check 20 of your most-cited URLs in ChatGPT, Perplexity, and AI Mode; confirm the same URL appears in each.</li> <li>Patch redirect chains, declare canonicals, and add stable id attributes to headings.</li> <li>Re-run the citation panel in 30 days.</li> </ol> <h2 id="faq">FAQ</h2> <h3 id="q-does-the-order-of-words-in-a-slug-matter-for-ai-citations">Q: Does the order of words in a slug matter for AI citations?</h3> <p>Yes, but less than for traditional SEO. AI engines tokenize slugs and match them against the canonical question; word order is one signal among many. Place the most identity-bearing word (the entity or canonical noun) first when possible.</p> <h3 id="q-should-i-use-html-or-no-extension">Q: Should I use .html or no extension?</h3> <p>Modern AI engines treat both equivalently as long as the response is HTML and the canonical is correct. New sites should default to extensionless URLs for cleaner citations.</p> <h3 id="q-can-i-shorten-urls-through-a-redirector-for-ai-citations">Q: Can I shorten URLs through a redirector for AI citations?</h3> <p>Avoid shortening on your own site. Redirector links (bit.ly, custom shorteners) appear less stable to AI engines and are sometimes downranked because they cannot be parsed for topical signal.</p> <h3 id="q-do-trailing-slashes-really-change-citation-share">Q: Do trailing slashes really change citation share?</h3> <p>In practice, yes — when AI engines see two URLs serve identical content, they pick one canonically. If you do not declare which, the choice is non-deterministic and citations split between variants. A site-wide 301 to your canonical convention solves this in a single deploy.</p> <h3 id="q-how-do-fragment-identifiers-help-llms-cite-my-page-more-precisely">Q: How do fragment identifiers help LLMs cite my page more precisely?</h3> <p>Fragments let an AI engine cite a specific section rather than the whole page, which is strictly more useful to readers. Pages with stable section IDs earn more deep-link citations from Perplexity and Gemini Deep Research, where citations often target the most relevant section.</p></div><div style="margin-top:64px"><h2 style="font-size:18px;font-weight:600;margin-bottom:16px;padding-bottom:8px;border-bottom:1px solid var(--border-default)">Bài viết liên quan</h2><div style="display:grid;grid-template-columns:repeat(auto-fill, minmax(280px, 1fr));gap:16px"><a style="text-decoration:none" data-related-article="404-page-ai-crawler-handling" data-related-position="1" href="/vi/technical/404-page-ai-crawler-handling"><div class="card"><span class="badge badge-green" style="margin-bottom:8px">guide</span><h3 style="font-size:15px;font-weight:600;color:var(--text-heading);margin-bottom:4px">404 Page AI Crawler Handling: Avoiding Citation Loss During Migrations</h3><p style="font-size:13px;color:var(--text-secondary);line-height:1.5">Migration playbook for keeping AI citations during URL changes — hard 404 vs soft 404, 410 Gone, redirect chains, sitemap cleanup, and refetch monitoring.</p></div></a><a style="text-decoration:none" data-related-article="accept-encoding-for-ai-crawlers" data-related-position="2" href="/vi/technical/accept-encoding-for-ai-crawlers"><div class="card"><span class="badge badge-green" style="margin-bottom:8px">specification</span><h3 style="font-size:15px;font-weight:600;color:var(--text-heading);margin-bottom:4px">Accept-Encoding (Brotli, Gzip) for AI Crawlers</h3><p style="font-size:13px;color:var(--text-secondary);line-height:1.5">Specification for serving Brotli, gzip, and zstd to AI crawlers via Accept-Encoding negotiation: which bots support which codecs, fallback rules, and Vary handling.</p></div></a><a style="text-decoration:none" data-related-article="accept-language-ai-crawlers" data-related-position="3" href="/vi/technical/accept-language-ai-crawlers"><div class="card"><span class="badge badge-green" style="margin-bottom:8px">specification</span><h3 style="font-size:15px;font-weight:600;color:var(--text-heading);margin-bottom:4px">Accept-Language Handling for AI Crawlers</h3><p style="font-size:13px;color:var(--text-secondary);line-height:1.5">Specification for handling Accept-Language with AI crawlers: avoid auto-redirects, expose hreflang, prefer separate locale URLs, and preserve citation eligibility.</p></div></a></div></div></article><div style="padding-left:40px" class="toc-sidebar"><nav style="position:sticky;top:88px;font-size:13px;line-height:1.6;max-height:calc(100vh - 100px);overflow-y:auto"><div style="font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-cool-gray);margin-bottom:12px">Trên trang này</div><a href="#tl-dr" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">TL;DR</a><a href="#why-url-structure-matters-for-ai-citations" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Why URL structure matters for AI citations</a><a href="#slug-design" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Slug design</a><a href="#depth-and-hierarchy" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Depth and hierarchy</a><a href="#query-parameters" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Query parameters</a><a href="#trailing-slashes" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Trailing slashes</a><a href="#fragment-identifiers" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Fragment identifiers</a><a href="#url-stability-rules" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">URL stability rules</a><a href="#idn-and-non-ascii-characters" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">IDN and non-ASCII characters</a><a href="#common-mistakes-that-hurt-ai-citations" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">Common mistakes that hurt AI citations</a><a href="#how-to-audit-your-urls" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">How to audit your URLs</a><a href="#faq" style="display:block;padding:4px 0;padding-left:0;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:none">FAQ</a><a href="#q-does-the-order-of-words-in-a-slug-matter-for-ai-citations" style="display:block;padding:4px 0;padding-left:16px;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:1px solid var(--border-default)">Q: Does the order of words in a slug matter for AI citations?</a><a href="#q-should-i-use-html-or-no-extension" style="display:block;padding:4px 0;padding-left:16px;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:1px solid var(--border-default)">Q: Should I use .html or no extension?</a><a href="#q-can-i-shorten-urls-through-a-redirector-for-ai-citations" style="display:block;padding:4px 0;padding-left:16px;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:1px solid var(--border-default)">Q: Can I shorten URLs through a redirector for AI citations?</a><a href="#q-do-trailing-slashes-really-change-citation-share" style="display:block;padding:4px 0;padding-left:16px;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:1px solid var(--border-default)">Q: Do trailing slashes really change citation share?</a><a href="#q-how-do-fragment-identifiers-help-llms-cite-my-page-more-precisely" style="display:block;padding:4px 0;padding-left:16px;color:var(--text-secondary);text-decoration:none;transition:color 0.15s ease;border-left:1px solid var(--border-default)">Q: How do fragment identifiers help LLMs cite my page more precisely?</a></nav></div></div><style> @media (max-width: 1024px) { .toc-sidebar { display: none !important; } } @media (min-width: 1025px) { article { /* override grid for 3-col with TOC */ } } .article-tag-link:hover { border-color: var(--color-dark-green) !important; color: var(--text-primary) !important; background: rgba(0, 237, 100, 0.06) !important; } </style></main><section style="padding:64px 24px;background:var(--bg-surface);border-top:1px solid var(--border-subtle)"><div style="max-width:520px;margin:0 auto;text-align:center"><div style="font-family:var(--font-mono);font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-dark-green);margin-bottom:12px">Cập nhật tin tức</div><h2 style="font-family:var(--font-display);font-size:clamp(1.25rem, 3vw, 1.75rem);font-weight:400;color:var(--text-heading);margin-bottom:8px;line-height:1.3">Thông tin GEO & AI Search</h2><p style="font-size:14px;color:var(--text-secondary);line-height:1.7;margin-bottom:24px">Bài viết mới, cập nhật khung làm việc và phân tích ngành. Không spam, hủy đăng ký bất cứ lúc nào.</p><form style="display:flex;flex-wrap:wrap;gap:8px;max-width:420px;margin:0 auto"><input type="email" placeholder="email@cuaban.com" required="" style="flex:1;min-width:200px;padding:12px 16px;border-radius:var(--radius-pill);border:1px solid var(--border-default);background:var(--bg-page);color:var(--text-primary);font-family:var(--font-body);font-size:14px;outline:none;transition:border-color 0.2s ease" value=""/><button type="submit" class="btn btn-primary" style="padding:12px 24px;font-size:14px;opacity:1">Đăng ký</button></form></div></section><!--$--><!--/$--><footer style="background:var(--color-stelixx-dark);border-top:1px solid var(--color-teal-gray);padding:64px 24px 32px"><div style="max-width:1200px;margin:0 auto"><div style="display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:48px;margin-bottom:48px"><div><div style="margin-bottom:16px"><img alt="Geodocs.dev" loading="lazy" width="140" height="32" decoding="async" data-nimg="1" style="color:transparent;height:24px;width:auto" src="/geodocs-logo-dark.svg"/></div><p style="font-size:13px;color:var(--color-cool-gray);line-height:1.6;max-width:220px">Kiến thức có cấu trúc cho khả năng hiển thị tìm kiếm AI. Tài liệu tham khảo chuẩn cho GEO, AEO và tối ưu hóa tìm kiếm AI.</p></div><div><h4 style="font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-stelixx-green);margin-bottom:16px">Học</h4><ul style="list-style:none;display:flex;flex-direction:column;gap:10px"><li><a class="footer-link" href="/vi/geo/what-is-geo">What Is GEO?</a></li><li><a class="footer-link" href="/vi/aeo/what-is-aeo">What Is AEO?</a></li><li><a class="footer-link" href="/vi/geo/geo-vs-seo">GEO vs SEO</a></li><li><a class="footer-link" href="/vi/reference/geo-aeo-glossary">GEO Glossary</a></li></ul></div><div><h4 style="font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-stelixx-green);margin-bottom:16px">Xây dựng</h4><ul style="list-style:none;display:flex;flex-direction:column;gap:10px"><li><a class="footer-link" href="/vi/technical/llms-txt">llms.txt Reference</a></li><li><a class="footer-link" href="/vi/technical/how-to-create-llms-txt">Create llms.txt</a></li><li><a class="footer-link" href="/vi/technical/structured-data-for-ai-search">Structured Data</a></li><li><a class="footer-link" href="/vi/technical/ai-txt">ai.txt Reference</a></li></ul></div><div><h4 style="font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-stelixx-green);margin-bottom:16px">Chiến lược</h4><ul style="list-style:none;display:flex;flex-direction:column;gap:10px"><li><a class="footer-link" href="/vi/strategy/ai-visibility-measurement">AI Visibility</a></li><li><a class="footer-link" href="/vi/strategy/geo-content-strategy">Content Strategy</a></li><li><a class="footer-link" href="/vi/strategy/geo-roi-framework">GEO ROI</a></li><li><a class="footer-link" href="/vi/aeo/aeo-content-checklist">AEO Checklist</a></li></ul></div><div><h4 style="font-family:var(--font-mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:var(--color-stelixx-green);margin-bottom:16px">Tài nguyên</h4><ul style="list-style:none;display:flex;flex-direction:column;gap:10px"><li><a class="footer-link" href="https://github.com/Geodocs-dev">GitHub</a></li><li><a class="footer-link" href="/vi/contact">Contact</a></li><li><a class="footer-link" href="/vi/tags">Tags</a></li><li><a class="footer-link" href="/vi/sitemap">HTML Sitemap</a></li><li><a class="footer-link" href="/sitemap.xml">XML Sitemap</a></li><li><a class="footer-link" href="/llms.txt">llms.txt</a></li><li><a class="footer-link" href="/ai.txt">ai.txt</a></li></ul></div></div><div style="border-top:1px solid var(--color-teal-gray);padding-top:24px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px"><p style="font-size:12px;color:var(--color-cool-gray)">© <!-- -->2026<!-- --> Geodocs.dev. <!-- -->Bảo lưu mọi quyền.</p><p style="font-size:12px;color:var(--color-cool-gray)"><a href="mailto:contact@geodocs.dev" class="footer-link">contact@geodocs.dev</a> · <!-- -->Xây dựng cho con người và AI agents.</p></div></div><style> .footer-link { font-size: 13px; color: var(--color-silver-teal); text-decoration: none; transition: color 0.2s ease; } .footer-link:hover { color: var(--color-white); } </style></footer><script src="/_next/static/chunks/0_k5kz-r4593u.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[86402,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"GTMNoScript\"]\n3:I[59919,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"ThemeProvider\"]\n4:\"$Sreact.suspense\"\n5:I[86402,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"PostHogPageView\"]\n6:I[39756,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"default\"]\n7:I[37457,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"default\"]\n9:I[35264,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"AlgoliaSearchDialog\"]\na:I[56414,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"GeolifyAIDialog\"]\nb:I[86402,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"Analytics\"]\ne:I[97367,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"OutletBoundary\"]\n11:I[97367,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"ViewportBoundary\"]\n13:I[97367,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"MetadataBoundary\"]\n15:I[63491,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/01c-w9f482.ic.js\"],\"default\"]\n:HL[\"/_next/static/chunks/0no7mk~ta4ofx.css\",\"style\"]\n:HL[\"/fonts/Inter-Variable.woff2\",\"font\",{\"crossOrigin\":\"anonymous\",\"type\":\"font/woff2\"}]\n:HL[\"/fonts/Lora-Variable.woff2\",\"font\",{\"crossOrigin\":\"anonymous\",\"type\":\"font/woff2\"}]\n:HL[\"/fonts/JetBrainsMono-Variable.woff2\",\"font\",{\"crossOrigin\":\"anonymous\",\"type\":\"font/woff2\"}]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"c\":[\"\",\"vi\",\"technical\",\"url-structure-ai-search-best-practices\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[[\"lang\",\"vi\",\"d\",null],{\"children\":[[\"section\",\"technical\",\"d\",null],{\"children\":[[\"slug\",\"url-structure-ai-search-best-practices\",\"d\",null],{\"children\":[\"__PAGE__\",{}]}]}]}]},\"$undefined\",\"$undefined\",16],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0no7mk~ta4ofx.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/027z30oepz30q.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-3\",{\"src\":\"/_next/static/chunks/0to0fsue-2tey.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-4\",{\"src\":\"/_next/static/chunks/05cra..ka3fzk.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"script\",null,{\"id\":\"theme-initializer\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"(function(){try{var t=localStorage.getItem('geodocs-theme');if(t==='dark'){document.documentElement.setAttribute('data-theme','dark')}else{document.documentElement.setAttribute('data-theme','light')}}catch(e){}})()\"}}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"href\":\"/favicon.ico\",\"sizes\":\"any\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/fonts/Inter-Variable.woff2\",\"as\":\"font\",\"type\":\"font/woff2\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/fonts/Lora-Variable.woff2\",\"as\":\"font\",\"type\":\"font/woff2\",\"crossOrigin\":\"anonymous\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/fonts/JetBrainsMono-Variable.woff2\",\"as\":\"font\",\"type\":\"font/woff2\",\"crossOrigin\":\"anonymous\"}]]}],[\"$\",\"body\",null,{\"children\":[[\"$\",\"$L2\",null,{}],[\"$\",\"$L3\",null,{\"children\":[[\"$\",\"$4\",null,{\"fallback\":null,\"children\":[\"$\",\"$L5\",null,{}]}],[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$L8\",[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$L9\",null,{}],[\"$\",\"$La\",null,{}]]}],[\"$\",\"$Lb\",null,{}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"async\":true,\"nonce\":\"$undefined\"}]],\"$Lc\"]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[\"$Ld\",[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/0az-wrvsrozq0.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"$Le\",null,{\"children\":[\"$\",\"$4\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@f\"}]}]]}],{},null,false,null]},null,false,\"$@10\"]},null,false,\"$@10\"]},null,false,null]},null,false,null],[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L11\",null,{\"children\":\"$L12\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L13\",null,{\"children\":[\"$\",\"$4\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L14\"}]}]}],null]}],false]],\"m\":\"$undefined\",\"G\":[\"$15\",[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/0no7mk~ta4ofx.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]]],\"S\":true,\"h\":null,\"s\":\"$undefined\",\"l\":\"$undefined\",\"p\":\"$undefined\",\"d\":\"$undefined\",\"b\":\"wY6KhsskW3tmEWHTlRFd0\"}\n"])</script><script>self.__next_f.push([1,"16:[]\n10:\"$W16\"\n"])</script><script>self.__next_f.push([1,"17:I[2971,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\"],\"Header\"]\n"])</script><script>self.__next_f.push([1,"8:[[\"$\",\"$L17\",null,{\"lang\":\"en\",\"dict\":{\"nav\":{\"startHere\":\"Start Here\",\"geo\":\"GEO\",\"aeo\":\"AEO\",\"technical\":\"Technical\",\"strategy\":\"Strategy\",\"reference\":\"Reference\",\"tools\":\"Tools\",\"search\":\"Search docs...\",\"askGeolifyAI\":\"Ask GeolifyAI\",\"beta\":\"Beta\"},\"home\":{\"tagline\":\"The Canonical Knowledge System\",\"headline\":\"Structured knowledge for\",\"headlineHighlight\":\"AI search visibility\",\"subtitle\":\"GEO, AEO, and AI search optimization — defined, structured, and operationalized. Built for SEO professionals, developers, content teams, and AI agents.\",\"ctaPrimary\":\"Start with GEO\",\"ctaSecondary\":\"Read llms.txt spec\",\"trustSignals\":{\"answerFirst\":\"Answer-first content\",\"aiCitable\":\"AI-citable definitions\",\"machineReadable\":\"Machine-readable specs\",\"openFree\":\"Open \u0026 free\"},\"essentialReading\":\"Essential Reading\",\"geoPlaybooks\":\"GEO Playbooks\",\"playbooksSubtitle\":\"Canonical definitions, comparisons, and implementation guides. Start here to build your GEO foundation.\",\"readArticle\":\"Read article\",\"operatorsToolkit\":\"Operator's Toolkit\",\"technicalStandards\":\"Technical Standards for AI Search\",\"technicalSubtitle\":\"Implementation specs, file standards, and measurement frameworks. Everything you need to make your content AI-ready.\",\"knowledgeMap\":\"Knowledge Map\",\"browseBySection\":\"Browse by Section\",\"browseSubtitle\":\"Every concept has one canonical page. Explore the knowledge graph organized by domain.\",\"aiNativeDoc\":\"AI-Native Documentation\",\"builtForHumans\":\"Built for humans.\",\"readableByAI\":\"Readable by AI.\",\"aiNativeSubtitle\":\"Every page on geodocs.dev includes AI summary blocks, structured frontmatter, and machine-readable specs. Our content is designed to be cited by AI systems worldwide.\",\"aiContentSpec\":\"AI Content Spec\",\"viewLlmsTxt\":\"View llms.txt\",\"comparison\":{\"badge\":\"84% of AI answers synthesize from structured answer-first content\",\"title\":\"The Shift from Search Engines to Answer Engines\",\"subtitle\":\"SEO optimizes for human clicks on traditional SERPs. GEO \u0026 AEO optimize for machine comprehension, answer extraction, and AI citations.\",\"seoTitle\":\"Traditional SEO\",\"seoTagline\":\"Optimizing for SERP Blue Links\",\"geoTitle\":\"GEO \u0026 AEO Framework\",\"geoTagline\":\"Optimizing for AI Answer Citations\",\"criteria\":{\"goalLabel\":\"Primary Goal\",\"seoGoal\":\"Rank #1 on traditional search results\",\"geoGoal\":\"Become the cited authority in AI-generated answers\",\"metricLabel\":\"Core Metric\",\"seoMetric\":\"Organic Traffic, Clicks \u0026 SERP Impressions\",\"geoMetric\":\"AI Citation Share, Brand Sentiment \u0026 Direct Answer Rate\",\"formatLabel\":\"Content Structure\",\"seoFormat\":\"Long-form text optimized for keyword density \u0026 readability\",\"geoFormat\":\"Answer-First TL;DRs, RAG-friendly chunks \u0026 Machine Specs\",\"discoveryLabel\":\"Discovery Engine\",\"seoDiscovery\":\"Googlebot crawl, indexing \u0026 PageRank links\",\"geoDiscovery\":\"RAG vector retrieval, llms.txt, ai.txt \u0026 JSON-LD Schema\"},\"cta\":\"Explore full GEO vs SEO guide\"}},\"sections\":{\"geo\":{\"title\":\"GEO - Generative Engine Optimization\",\"description\":\"Guides, definitions, and frameworks for optimizing content visibility in AI-generated answers.\"},\"aeo\":{\"title\":\"AEO - Answer Engine Optimization\",\"description\":\"How to structure content so AI systems can extract and cite direct answers.\"},\"technical\":{\"title\":\"Technical Implementation\",\"description\":\"llms.txt, ai.txt, structured data, and other technical specs for AI search readiness.\"},\"strategy\":{\"title\":\"Strategy \u0026 Frameworks\",\"description\":\"Business frameworks for AI search visibility — ROI, measurement, and content planning.\"},\"reference\":{\"title\":\"Reference\",\"description\":\"Glossary, cheatsheets, and canonical definitions for GEO/AEO terminology.\"},\"tools\":{\"title\":\"Tools \u0026 Platforms\",\"description\":\"Evaluations, comparisons, and stack recommendations for AI search optimization tools.\"},\"case-studies\":{\"title\":\"Case Studies\",\"description\":\"Evidence-based examples with real data — before/after results and industry applications.\"},\"ai-agents\":{\"title\":\"AI Agents\",\"description\":\"Machine-readable specs and documentation designed specifically for AI parsers and bots.\"}},\"article\":{\"minRead\":\"{min} min read\",\"words\":\"{count} words\",\"updated\":\"Updated {date}\",\"relatedArticles\":\"Related Articles\",\"onThisPage\":\"On this page\",\"topics\":\"Topics\",\"copy\":\"Copy\",\"copied\":\"Copied!\"},\"tags\":{\"browseByTopic\":\"Browse by Topic\",\"exploreTopics\":\"Explore {count} topics across all GEO, AEO, and AI search optimization articles.\",\"articlesTaggedWith\":\"{count} article tagged with \\\"{tag}\\\"|{count} articles tagged with \\\"{tag}\\\"\"},\"newsletter\":{\"stayUpdated\":\"Stay Updated\",\"title\":\"GEO \u0026 AI Search Insights\",\"description\":\"New articles, framework updates, and industry analysis. No spam, unsubscribe anytime.\",\"placeholder\":\"your@email.com\",\"subscribe\":\"Subscribe\",\"success\":\"You're subscribed! We'll keep you updated.\",\"error\":\"Something went wrong. Please try again.\"},\"footer\":{\"learn\":\"Learn\",\"build\":\"Build\",\"strategy\":\"Strategy\",\"resources\":\"Resources\",\"description\":\"Structured knowledge for AI search visibility. The canonical reference for GEO, AEO, and AI search optimization.\",\"allRightsReserved\":\"All rights reserved.\",\"builtForHumansAndAI\":\"Built for humans and AI agents.\"},\"common\":{\"articles\":\"articles\",\"article\":\"article\",\"page\":\"Page {current} of {total}\",\"noArticles\":\"No published articles in this section yet.\",\"checkBackSoon\":\"Content is being actively developed. Check back soon.\",\"loadingArticles\":\"Loading articles…\",\"prev\":\"← Prev\",\"next\":\"Next →\",\"goHome\":\"Go home\",\"startWithGEO\":\"Start with GEO\"},\"notFound\":{\"label\":\"404 - Page Not Found\",\"title\":\"This page doesn't exist yet.\",\"description\":\"The content you're looking for may be in development. Geodocs.dev is actively building the canonical knowledge base for GEO and AEO.\"},\"error\":{\"title\":\"Something went wrong\",\"description\":\"An unexpected error occurred. Our team has been notified.\",\"tryAgain\":\"Try Again\"},\"contact\":{\"getInTouch\":\"Get In Touch\",\"contactUs\":\"Contact Us\",\"heroDescription\":\"Have a question about GEO, AEO, or AI search optimization? Want to collaborate or contribute? We'd love to hear from you.\",\"name\":\"Name\",\"email\":\"Email\",\"subject\":\"Subject\",\"subjectPlaceholder\":\"What is this about?\",\"namePlaceholder\":\"Your name\",\"message\":\"Message\",\"messagePlaceholder\":\"Tell us more...\",\"sendMessage\":\"Send Message\",\"sending\":\"Sending...\",\"messageSent\":\"Message sent!\",\"thankYou\":\"Thank you for reaching out. We'll get back to you within 1-2 business days.\",\"sendAnother\":\"Send another message\",\"emailDirectly\":\"Or email us directly at\",\"validationName\":\"Please enter your name.\",\"validationEmail\":\"Please enter a valid email address.\",\"validationMessage\":\"Please enter a message (at least 10 characters).\",\"networkError\":\"Network error. Please try again.\",\"genericError\":\"Something went wrong. Please try again.\"},\"languagePicker\":{\"label\":\"Language\"},\"sitemap\":{\"title\":\"HTML Sitemap\",\"subtitle\":\"Complete directory of canonical GEO, AEO, and AI search visibility documentation.\",\"sectionsTitle\":\"Content Silos\",\"mainPagesTitle\":\"Core Pages \u0026 Specifications\",\"tagsTitle\":\"Browse by Topic\",\"totalArticles\":\"{count} published articles\",\"totalSections\":\"8 Section Silos\",\"quickJump\":\"Quick Jump:\",\"englishFallback\":\"EN Original\"}}}],\"$L18\",\"$L19\"]\n"])</script><script>self.__next_f.push([1,"1a:I[22016,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"/_next/static/chunks/0az-wrvsrozq0.js\"],\"\"]\n1b:I[5500,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\"],\"Image\"]\n18:[\"$\",\"main\",null,{\"style\":{\"minHeight\":\"60vh\",\"display\":\"flex\",\"alignItems\":\"center\",\"justifyContent\":\"center\",\"textAlign\":\"center\",\"padding\":\"80px 24px\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":3,\"color\":\"var(--color-cool-gray)\",\"marginBottom\":16},\"children\":\"404 - Page Not Found\"}],[\"$\",\"h1\",null,{\"style\":{\"fontFamily\":\"var(--font-display)\",\"fontSize\":\"clamp(2rem, 4vw, 3rem)\",\"fontWeight\":400,\"color\":\"var(--text-heading)\",\"marginBottom\":16},\"children\":\"This page doesn't exist yet.\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":16,\"color\":\"var(--color-cool-gray)\",\"lineHeight\":1.7,\"maxWidth\":480,\"margin\":\"0 auto 32px\"},\"children\":\"The content you're looking for may be in development. Geodocs.dev is actively building the canonical knowledge base for GEO and AEO.\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"flex\",\"justifyContent\":\"center\",\"gap\":12},\"children\":[[\"$\",\"$L1a\",null,{\"href\":\"/\",\"className\":\"btn btn-primary\",\"children\":\"Go home\"}],[\"$\",\"$L1a\",null,{\"href\":\"/geo/what-is-geo\",\"className\":\"btn btn-outline\",\"children\":\"Start with GEO\"}]]}]]}]}]\n"])</script><script>self.__next_f.push([1,"19:[\"$\",\"footer\",null,{\"style\":{\"background\":\"var(--color-stelixx-dark)\",\"borderTop\":\"1px solid var(--color-teal-gray)\",\"padding\":\"64px 24px 32px\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"maxWidth\":1200,\"margin\":\"0 auto\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"display\":\"grid\",\"gridTemplateColumns\":\"repeat(auto-fit, minmax(180px, 1fr))\",\"gap\":48,\"marginBottom\":48},\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"div\",null,{\"style\":{\"marginBottom\":16},\"children\":[\"$\",\"$L1b\",null,{\"src\":\"/geodocs-logo-dark.svg\",\"alt\":\"Geodocs.dev\",\"width\":140,\"height\":32,\"style\":{\"height\":24,\"width\":\"auto\"}}]}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":13,\"color\":\"var(--color-cool-gray)\",\"lineHeight\":1.6,\"maxWidth\":220},\"children\":\"Structured knowledge for AI search visibility. The canonical reference for GEO, AEO, and AI search optimization.\"}]]}],[[\"$\",\"div\",\"Learn\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Learn\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/geo/what-is-geo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/geo/what-is-geo\",\"className\":\"footer-link\",\"children\":\"What Is GEO?\"}]}],[\"$\",\"li\",\"/aeo/what-is-aeo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/aeo/what-is-aeo\",\"className\":\"footer-link\",\"children\":\"What Is AEO?\"}]}],[\"$\",\"li\",\"/geo/geo-vs-seo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/geo/geo-vs-seo\",\"className\":\"footer-link\",\"children\":\"GEO vs SEO\"}]}],[\"$\",\"li\",\"/reference/geo-aeo-glossary\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/reference/geo-aeo-glossary\",\"className\":\"footer-link\",\"children\":\"GEO Glossary\"}]}]]}]]}],[\"$\",\"div\",\"Build\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Build\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/technical/llms-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/technical/llms-txt\",\"className\":\"footer-link\",\"children\":\"llms.txt Reference\"}]}],[\"$\",\"li\",\"/technical/how-to-create-llms-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/technical/how-to-create-llms-txt\",\"className\":\"footer-link\",\"children\":\"Create llms.txt\"}]}],[\"$\",\"li\",\"/technical/structured-data-for-ai-search\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/technical/structured-data-for-ai-search\",\"className\":\"footer-link\",\"children\":\"Structured Data\"}]}],[\"$\",\"li\",\"/technical/ai-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/technical/ai-txt\",\"className\":\"footer-link\",\"children\":\"ai.txt Reference\"}]}]]}]]}],[\"$\",\"div\",\"Strategy\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Strategy\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/strategy/ai-visibility-measurement\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/strategy/ai-visibility-measurement\",\"className\":\"footer-link\",\"children\":\"AI Visibility\"}]}],[\"$\",\"li\",\"/strategy/geo-content-strategy\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/strategy/geo-content-strategy\",\"className\":\"footer-link\",\"children\":\"Content Strategy\"}]}],[\"$\",\"li\",\"/strategy/geo-roi-framework\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/strategy/geo-roi-framework\",\"className\":\"footer-link\",\"children\":\"GEO ROI\"}]}],[\"$\",\"li\",\"/aeo/aeo-content-checklist\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/aeo/aeo-content-checklist\",\"className\":\"footer-link\",\"children\":\"AEO Checklist\"}]}]]}]]}],[\"$\",\"div\",\"Resources\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Resources\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"https://github.com/Geodocs-dev\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"https://github.com/Geodocs-dev\",\"className\":\"footer-link\",\"children\":\"GitHub\"}]}],[\"$\",\"li\",\"/contact\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/contact\",\"className\":\"footer-link\",\"children\":\"Contact\"}]}],[\"$\",\"li\",\"/tags\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/tags\",\"className\":\"footer-link\",\"children\":\"Tags\"}]}],[\"$\",\"li\",\"/sitemap\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/sitemap\",\"className\":\"footer-link\",\"children\":\"HTML Sitemap\"}]}],\"$L1c\",\"$L1d\",\"$L1e\"]}]]}]]]}],\"$L1f\"]}],\"$L20\"]}]\n"])</script><script>self.__next_f.push([1,"c:[[\"$\",\"script\",null,{\"id\":\"lang-setter\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"document.documentElement.lang=\\\"vi\\\";\"}}],[\"$\",\"$L17\",null,{\"lang\":\"vi\",\"dict\":{\"nav\":{\"startHere\":\"Bắt đầu\",\"geo\":\"GEO\",\"aeo\":\"AEO\",\"technical\":\"Kỹ thuật\",\"strategy\":\"Chiến lược\",\"reference\":\"Tham khảo\",\"tools\":\"Công cụ\",\"search\":\"Tìm kiếm tài liệu...\",\"askGeolifyAI\":\"Hỏi GeolifyAI\",\"beta\":\"Beta\"},\"home\":{\"tagline\":\"Hệ thống kiến thức chuẩn\",\"headline\":\"Kiến thức có cấu trúc cho\",\"headlineHighlight\":\"khả năng hiển thị trên AI Search\",\"subtitle\":\"GEO, AEO và tối ưu hóa tìm kiếm AI — được định nghĩa, cấu trúc hóa và vận hành. Dành cho chuyên gia SEO, lập trình viên, đội ngũ nội dung và AI agents.\",\"ctaPrimary\":\"Bắt đầu với GEO\",\"ctaSecondary\":\"Đọc thông số llms.txt\",\"trustSignals\":{\"answerFirst\":\"Nội dung trả lời trực tiếp\",\"aiCitable\":\"Định nghĩa trích dẫn được bởi AI\",\"machineReadable\":\"Thông số đọc được bởi máy\",\"openFree\":\"Mở \u0026 miễn phí\"},\"essentialReading\":\"Đọc thiết yếu\",\"geoPlaybooks\":\"Cẩm nang GEO\",\"playbooksSubtitle\":\"Định nghĩa chuẩn, so sánh và hướng dẫn triển khai. Bắt đầu tại đây để xây dựng nền tảng GEO.\",\"readArticle\":\"Đọc bài viết\",\"operatorsToolkit\":\"Bộ công cụ vận hành\",\"technicalStandards\":\"Tiêu chuẩn kỹ thuật cho AI Search\",\"technicalSubtitle\":\"Thông số triển khai, chuẩn tệp và khung đo lường. Mọi thứ bạn cần để nội dung sẵn sàng cho AI.\",\"knowledgeMap\":\"Bản đồ kiến thức\",\"browseBySection\":\"Duyệt theo chủ đề\",\"browseSubtitle\":\"Mỗi khái niệm có một trang chuẩn. Khám phá đồ thị kiến thức được tổ chức theo lĩnh vực.\",\"aiNativeDoc\":\"Tài liệu AI-Native\",\"builtForHumans\":\"Xây dựng cho con người.\",\"readableByAI\":\"Đọc được bởi AI.\",\"aiNativeSubtitle\":\"Mỗi trang trên geodocs.dev bao gồm khối tóm tắt AI, frontmatter có cấu trúc và thông số đọc được bởi máy. Nội dung của chúng tôi được thiết kế để được trích dẫn bởi các hệ thống AI trên toàn thế giới.\",\"aiContentSpec\":\"Thông số nội dung AI\",\"viewLlmsTxt\":\"Xem llms.txt\",\"comparison\":{\"badge\":\"84% câu trả lời AI tổng hợp từ nội dung có cấu trúc Answer-First\",\"title\":\"Sự dịch chuyển từ Search Engine sang Answer Engine\",\"subtitle\":\"SEO tối ưu hóa cho lượt nhấp của người dùng trên SERP. GEO \u0026 AEO tối ưu hóa cho khả năng đọc hiểu của máy, trích xuất câu trả lời và trích dẫn AI.\",\"seoTitle\":\"SEO Truyền thống\",\"seoTagline\":\"Tối ưu hóa cho kết quả liên kết xanh SERP\",\"geoTitle\":\"Khung GEO \u0026 AEO\",\"geoTagline\":\"Tối ưu hóa cho trích dẫn trong AI Answer\",\"criteria\":{\"goalLabel\":\"Mục tiêu chính\",\"seoGoal\":\"Xếp hạng top 1 trên kết quả tìm kiếm truyền thống\",\"geoGoal\":\"Trở thành nguồn uy tín được trích dẫn trong AI Answer\",\"metricLabel\":\"Thước đo cốt lõi\",\"seoMetric\":\"Traffic tự nhiên, lượt nhấp (CTR) \u0026 SERP Impressions\",\"geoMetric\":\"Tỷ lệ trích dẫn AI, Brand Sentiment \u0026 Mức trích xuất\",\"formatLabel\":\"Cấu trúc nội dung\",\"seoFormat\":\"Văn bản dài tối ưu cho mật độ từ khóa \u0026 trải nghiệm đọc\",\"geoFormat\":\"Tóm tắt Answer-First, RAG-Friendly Chunks \u0026 Machine Specs\",\"discoveryLabel\":\"Cơ chế truy xuất\",\"seoDiscovery\":\"Googlebot Crawl, Indexing \u0026 PageRank Link\",\"geoDiscovery\":\"RAG Vector Retrieval, llms.txt, ai.txt \u0026 JSON-LD Schema\"},\"cta\":\"Xem hướng dẫn chi tiết GEO vs SEO\"}},\"sections\":{\"geo\":{\"title\":\"GEO - Tối ưu hóa công cụ tạo sinh\",\"description\":\"Hướng dẫn, định nghĩa và khung làm việc để tối ưu khả năng hiển thị nội dung trong câu trả lời do AI tạo ra.\"},\"aeo\":{\"title\":\"AEO - Tối ưu hóa công cụ trả lời\",\"description\":\"Cách cấu trúc nội dung để hệ thống AI có thể trích xuất và trích dẫn câu trả lời trực tiếp.\"},\"technical\":{\"title\":\"Triển khai kỹ thuật\",\"description\":\"llms.txt, ai.txt, dữ liệu có cấu trúc và các thông số kỹ thuật khác cho sự sẵn sàng tìm kiếm AI.\"},\"strategy\":{\"title\":\"Chiến lược \u0026 Khung làm việc\",\"description\":\"Khung kinh doanh cho khả năng hiển thị tìm kiếm AI — ROI, đo lường và lập kế hoạch nội dung.\"},\"reference\":{\"title\":\"Tham khảo\",\"description\":\"Bảng thuật ngữ, cheatsheet và định nghĩa chuẩn cho thuật ngữ GEO/AEO.\"},\"tools\":{\"title\":\"Công cụ \u0026 Nền tảng\",\"description\":\"Đánh giá, so sánh và khuyến nghị bộ công cụ tối ưu hóa tìm kiếm AI.\"},\"case-studies\":{\"title\":\"Nghiên cứu điển hình\",\"description\":\"Ví dụ dựa trên bằng chứng với dữ liệu thực — kết quả trước/sau và ứng dụng ngành.\"},\"ai-agents\":{\"title\":\"AI Agents\",\"description\":\"Thông số và tài liệu đọc được bởi máy, thiết kế riêng cho trình phân tích cú pháp và bot AI.\"}},\"article\":{\"minRead\":\"{min} phút đọc\",\"words\":\"{count} từ\",\"updated\":\"Cập nhật {date}\",\"relatedArticles\":\"Bài viết liên quan\",\"onThisPage\":\"Trên trang này\",\"topics\":\"Chủ đề\",\"copy\":\"Sao chép\",\"copied\":\"Đã sao chép!\"},\"tags\":{\"browseByTopic\":\"Duyệt theo chủ đề\",\"exploreTopics\":\"Khám phá {count} chủ đề trên tất cả bài viết về GEO, AEO và tối ưu hóa tìm kiếm AI.\",\"articlesTaggedWith\":\"{count} bài viết được gắn thẻ \\\"{tag}\\\"\"},\"newsletter\":{\"stayUpdated\":\"Cập nhật tin tức\",\"title\":\"Thông tin GEO \u0026 AI Search\",\"description\":\"Bài viết mới, cập nhật khung làm việc và phân tích ngành. Không spam, hủy đăng ký bất cứ lúc nào.\",\"placeholder\":\"email@cuaban.com\",\"subscribe\":\"Đăng ký\",\"success\":\"Bạn đã đăng ký! Chúng tôi sẽ cập nhật cho bạn.\",\"error\":\"Đã có lỗi xảy ra. Vui lòng thử lại.\"},\"footer\":{\"learn\":\"Học\",\"build\":\"Xây dựng\",\"strategy\":\"Chiến lược\",\"resources\":\"Tài nguyên\",\"description\":\"Kiến thức có cấu trúc cho khả năng hiển thị tìm kiếm AI. Tài liệu tham khảo chuẩn cho GEO, AEO và tối ưu hóa tìm kiếm AI.\",\"allRightsReserved\":\"Bảo lưu mọi quyền.\",\"builtForHumansAndAI\":\"Xây dựng cho con người và AI agents.\"},\"common\":{\"articles\":\"bài viết\",\"article\":\"bài viết\",\"page\":\"Trang {current}/{total}\",\"noArticles\":\"Chưa có bài viết nào được xuất bản trong mục này.\",\"checkBackSoon\":\"Nội dung đang được phát triển. Hãy quay lại sớm.\",\"loadingArticles\":\"Đang tải bài viết…\",\"prev\":\"← Trước\",\"next\":\"Tiếp →\",\"goHome\":\"Về trang chủ\",\"startWithGEO\":\"Bắt đầu với GEO\"},\"notFound\":{\"label\":\"404 - Không tìm thấy trang\",\"title\":\"Trang này chưa tồn tại.\",\"description\":\"Nội dung bạn đang tìm có thể đang được phát triển. Geodocs.dev đang tích cực xây dựng kho kiến thức chuẩn cho GEO và AEO.\"},\"error\":{\"title\":\"Đã xảy ra lỗi\",\"description\":\"Đã xảy ra lỗi không mong muốn. Đội ngũ của chúng tôi đã được thông báo.\",\"tryAgain\":\"Thử lại\"},\"contact\":{\"getInTouch\":\"Liên hệ\",\"contactUs\":\"Liên hệ với chúng tôi\",\"heroDescription\":\"Bạn có câu hỏi về GEO, AEO hoặc tối ưu hóa tìm kiếm AI? Muốn hợp tác hoặc đóng góp? Chúng tôi rất muốn nghe từ bạn.\",\"name\":\"Họ tên\",\"email\":\"Email\",\"subject\":\"Chủ đề\",\"subjectPlaceholder\":\"Nội dung liên hệ?\",\"namePlaceholder\":\"Tên của bạn\",\"message\":\"Tin nhắn\",\"messagePlaceholder\":\"Chia sẻ thêm...\",\"sendMessage\":\"Gửi tin nhắn\",\"sending\":\"Đang gửi...\",\"messageSent\":\"Đã gửi tin nhắn!\",\"thankYou\":\"Cảm ơn bạn đã liên hệ. Chúng tôi sẽ phản hồi trong 1-2 ngày làm việc.\",\"sendAnother\":\"Gửi tin nhắn khác\",\"emailDirectly\":\"Hoặc gửi email trực tiếp tới\",\"validationName\":\"Vui lòng nhập họ tên.\",\"validationEmail\":\"Vui lòng nhập địa chỉ email hợp lệ.\",\"validationMessage\":\"Vui lòng nhập tin nhắn (ít nhất 10 ký tự).\",\"networkError\":\"Lỗi mạng. Vui lòng thử lại.\",\"genericError\":\"Đã có lỗi xảy ra. Vui lòng thử lại.\"},\"languagePicker\":{\"label\":\"Ngôn ngữ\"},\"sitemap\":{\"title\":\"Sơ đồ trang web (HTML Sitemap)\",\"subtitle\":\"Thư mục toàn diện tài liệu chuẩn về GEO, AEO và khả năng hiển thị trên tìm kiếm AI.\",\"sectionsTitle\":\"Các nhóm nội dung\",\"mainPagesTitle\":\"Trang chính \u0026 Thông số kỹ thuật\",\"tagsTitle\":\"Duyệt theo chủ đề\",\"totalArticles\":\"{count} bài viết đã xuất bản\",\"totalSections\":\"8 Nhóm chuyên mục\",\"quickJump\":\"Nhảy nhanh:\",\"englishFallback\":\"Bản gốc EN\"}}}],\"$L21\",\"$L22\"]\n"])</script><script>self.__next_f.push([1,"2a:I[43937,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"/_next/static/chunks/0az-wrvsrozq0.js\"],\"ArticleTracker\"]\n1c:[\"$\",\"li\",\"/sitemap.xml\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/sitemap.xml\",\"className\":\"footer-link\",\"children\":\"XML Sitemap\"}]}]\n1d:[\"$\",\"li\",\"/llms.txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/llms.txt\",\"className\":\"footer-link\",\"children\":\"llms.txt\"}]}]\n1e:[\"$\",\"li\",\"/ai.txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/ai.txt\",\"className\":\"footer-link\",\"children\":\"ai.txt\"}]}]\n1f:[\"$\",\"div\",null,{\"style\":{\"borderTop\":\"1px solid var(--color-teal-gray)\",\"paddingTop\":24,\"display\":\"flex\",\"justifyContent\":\"space-between\",\"alignItems\":\"center\",\"flexWrap\":\"wrap\",\"gap\":16},\"children\":[[\"$\",\"p\",null,{\"style\":{\"fontSize\":12,\"color\":\"var(--color-cool-gray)\"},\"children\":[\"© \",2026,\" Geodocs.dev. \",\"All rights reserved.\"]}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":12,\"color\":\"var(--color-cool-gray)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"mailto:contact@geodocs.dev\",\"className\":\"footer-link\",\"children\":\"contact@geodocs.dev\"}],\" · \",\"Built for humans and AI agents.\"]}]]}]\n20:[\"$\",\"style\",null,{\"children\":\"\\n .footer-link {\\n font-size: 13px;\\n color: var(--color-silver-teal);\\n text-decoration: none;\\n transition: color 0.2s ease;\\n }\\n .footer-link:hover {\\n color: var(--color-white);\\n }\\n \"}]\n21:[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L7\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"22:[\"$\",\"footer\",null,{\"style\":{\"background\":\"var(--color-stelixx-dark)\",\"borderTop\":\"1px solid var(--color-teal-gray)\",\"padding\":\"64px 24px 32px\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"maxWidth\":1200,\"margin\":\"0 auto\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"display\":\"grid\",\"gridTemplateColumns\":\"repeat(auto-fit, minmax(180px, 1fr))\",\"gap\":48,\"marginBottom\":48},\"children\":[[\"$\",\"div\",null,{\"children\":[[\"$\",\"div\",null,{\"style\":{\"marginBottom\":16},\"children\":[\"$\",\"$L1b\",null,{\"src\":\"/geodocs-logo-dark.svg\",\"alt\":\"Geodocs.dev\",\"width\":140,\"height\":32,\"style\":{\"height\":24,\"width\":\"auto\"}}]}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":13,\"color\":\"var(--color-cool-gray)\",\"lineHeight\":1.6,\"maxWidth\":220},\"children\":\"Kiến thức có cấu trúc cho khả năng hiển thị tìm kiếm AI. Tài liệu tham khảo chuẩn cho GEO, AEO và tối ưu hóa tìm kiếm AI.\"}]]}],[[\"$\",\"div\",\"Học\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Học\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/vi/geo/what-is-geo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/geo/what-is-geo\",\"className\":\"footer-link\",\"children\":\"What Is GEO?\"}]}],[\"$\",\"li\",\"/vi/aeo/what-is-aeo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/aeo/what-is-aeo\",\"className\":\"footer-link\",\"children\":\"What Is AEO?\"}]}],[\"$\",\"li\",\"/vi/geo/geo-vs-seo\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/geo/geo-vs-seo\",\"className\":\"footer-link\",\"children\":\"GEO vs SEO\"}]}],[\"$\",\"li\",\"/vi/reference/geo-aeo-glossary\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/reference/geo-aeo-glossary\",\"className\":\"footer-link\",\"children\":\"GEO Glossary\"}]}]]}]]}],[\"$\",\"div\",\"Xây dựng\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Xây dựng\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/vi/technical/llms-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/technical/llms-txt\",\"className\":\"footer-link\",\"children\":\"llms.txt Reference\"}]}],[\"$\",\"li\",\"/vi/technical/how-to-create-llms-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/technical/how-to-create-llms-txt\",\"className\":\"footer-link\",\"children\":\"Create llms.txt\"}]}],[\"$\",\"li\",\"/vi/technical/structured-data-for-ai-search\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/technical/structured-data-for-ai-search\",\"className\":\"footer-link\",\"children\":\"Structured Data\"}]}],[\"$\",\"li\",\"/vi/technical/ai-txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/technical/ai-txt\",\"className\":\"footer-link\",\"children\":\"ai.txt Reference\"}]}]]}]]}],[\"$\",\"div\",\"Chiến lược\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Chiến lược\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"/vi/strategy/ai-visibility-measurement\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/strategy/ai-visibility-measurement\",\"className\":\"footer-link\",\"children\":\"AI Visibility\"}]}],[\"$\",\"li\",\"/vi/strategy/geo-content-strategy\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/strategy/geo-content-strategy\",\"className\":\"footer-link\",\"children\":\"Content Strategy\"}]}],[\"$\",\"li\",\"/vi/strategy/geo-roi-framework\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/strategy/geo-roi-framework\",\"className\":\"footer-link\",\"children\":\"GEO ROI\"}]}],[\"$\",\"li\",\"/vi/aeo/aeo-content-checklist\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/aeo/aeo-content-checklist\",\"className\":\"footer-link\",\"children\":\"AEO Checklist\"}]}]]}]]}],[\"$\",\"div\",\"Tài nguyên\",{\"children\":[[\"$\",\"h4\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":11,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-stelixx-green)\",\"marginBottom\":16},\"children\":\"Tài nguyên\"}],[\"$\",\"ul\",null,{\"style\":{\"listStyle\":\"none\",\"display\":\"flex\",\"flexDirection\":\"column\",\"gap\":10},\"children\":[[\"$\",\"li\",\"https://github.com/Geodocs-dev\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"https://github.com/Geodocs-dev\",\"className\":\"footer-link\",\"children\":\"GitHub\"}]}],[\"$\",\"li\",\"/vi/contact\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/contact\",\"className\":\"footer-link\",\"children\":\"Contact\"}]}],[\"$\",\"li\",\"/vi/tags\",{\"children\":\"$L23\"}],\"$L24\",\"$L25\",\"$L26\",\"$L27\"]}]]}]]]}],\"$L28\"]}],\"$L29\"]}]\n"])</script><script>self.__next_f.push([1,"2b:T968,"])</script><script>self.__next_f.push([1,"{\"@context\":\"https://schema.org\",\"@type\":\"TechArticle\",\"@id\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices#article\",\"mainEntityOfPage\":{\"@type\":\"WebPage\",\"@id\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\"},\"headline\":\"URL Structure Best Practices for AI Search Citations\",\"description\":\"URL structure affects how AI engines parse, cite, and follow links. Best practices for slug length, depth, parameters, fragments, and stability.\",\"image\":\"https://geodocs.dev/api/og?title=URL%20Structure%20Best%20Practices%20for%20AI%20Search%20Citations\u0026section=technical\u0026tag=URL%20structure%20AI%20search\u0026readingTime=7%20ph%C3%BAt%20%C4%91%E1%BB%8Dc\u0026lang=vi\",\"url\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\",\"inLanguage\":\"vi\",\"articleSection\":\"technical\",\"datePublished\":\"2026-04-29\",\"dateModified\":\"2026-04-29\",\"author\":{\"@type\":\"Person\",\"name\":\"Geodocs Research Team\",\"url\":\"https://geodocs.dev\"},\"publisher\":{\"@context\":\"https://schema.org\",\"@type\":\"Organization\",\"@id\":\"https://geodocs.dev/#organization\",\"name\":\"Geodocs.dev\",\"url\":\"https://geodocs.dev\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://geodocs.dev/api/og?title=URL%20Structure%20Best%20Practices%20for%20AI%20Search%20Citations\u0026section=technical\u0026tag=URL%20structure%20AI%20search\u0026readingTime=7%20ph%C3%BAt%20%C4%91%E1%BB%8Dc\u0026lang=vi\",\"width\":1200,\"height\":630},\"sameAs\":[\"https://github.com/geodocs\",\"https://x.com/geodocsdev\",\"https://www.linkedin.com/company/geodocs\",\"https://www.wikidata.org/wiki/Q116616084\",\"https://www.wikidata.org/wiki/Q131688636\",\"https://www.wikidata.org/wiki/Q11660\",\"https://www.wikidata.org/wiki/Q185360\",\"https://en.wikipedia.org/wiki/Search_engine_optimization\",\"https://en.wikipedia.org/wiki/Generative_artificial_intelligence\"],\"description\":\"Canonical knowledge system for GEO, AEO, and AI search visibility.\",\"contactPoint\":{\"@type\":\"ContactPoint\",\"contactType\":\"customer support\",\"url\":\"https://geodocs.dev/contact\"}},\"keywords\":\"URL structure AI search, URL hygiene AI citations, slug best practices, URL parameters LLM, trailing slash AI search\",\"about\":[{\"@type\":\"Thing\",\"name\":\"URL structure\"},{\"@type\":\"Thing\",\"name\":\"Slug\"},{\"@type\":\"Thing\",\"name\":\"Canonical URL\"},{\"@type\":\"Thing\",\"name\":\"Fragment identifier\"},{\"@type\":\"Thing\",\"name\":\"Query parameter\"},{\"@type\":\"Thing\",\"name\":\"GPTBot\"},{\"@type\":\"Thing\",\"name\":\"PerplexityBot\"}]}"])</script><script>self.__next_f.push([1,"d:[[\"$\",\"main\",null,{\"style\":{\"minHeight\":\"70vh\"},\"children\":[[\"$\",\"$L2a\",null,{\"meta\":{\"slug\":\"url-structure-ai-search-best-practices\",\"section\":\"technical\",\"content_type\":\"guide\",\"difficulty\":\"intermediate\",\"primary_audience\":\"developer\",\"secondary_audiences\":[\"seo-specialist\",\"content-strategist\"],\"word_count\":1400,\"reading_time_min\":7,\"has_code_snippet\":false,\"has_table\":true,\"citation_readiness\":\"reviewed\",\"series\":\"ai-search-technical-fundamentals\",\"series_order\":5}}],[[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"$2b\"}}],[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"{\\\"@context\\\":\\\"https://schema.org\\\",\\\"@type\\\":\\\"BreadcrumbList\\\",\\\"itemListElement\\\":[{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":1,\\\"name\\\":\\\"Trang chủ\\\",\\\"item\\\":\\\"https://geodocs.dev/vi\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":2,\\\"name\\\":\\\"TECHNICAL\\\",\\\"item\\\":\\\"https://geodocs.dev/vi/technical\\\"},{\\\"@type\\\":\\\"ListItem\\\",\\\"position\\\":3,\\\"name\\\":\\\"URL Structure Best Practices for AI Search Citations\\\",\\\"item\\\":\\\"https://geodocs.dev/vi/technical/url-structure-ai-search-best-practices\\\"}]}\"}}],\"$L2c\",\"$L2d\",\"$L2e\"]]}],\"$L2f\"]\n"])</script><script>self.__next_f.push([1,"31:I[23150,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"/_next/static/chunks/0az-wrvsrozq0.js\"],\"ShareButtons\"]\n32:I[47654,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"/_next/static/chunks/0az-wrvsrozq0.js\"],\"ExploreWithAI\"]\n36:I[11181,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\",\"/_next/static/chunks/03hsb-t4rgwk4.js\",\"/_next/static/chunks/0az-wrvsrozq0.js\"],\"Newsletter\"]\n23:[\"$\",\"$L1a\",null,{\"href\":\"/vi/tags\",\"className\":\"footer-link\",\"children\":\"Tags\"}]\n24:[\"$\",\"li\",\"/vi/sitemap\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/vi/sitemap\",\"className\":\"footer-link\",\"children\":\"HTML Sitemap\"}]}]\n25:[\"$\",\"li\",\"/sitemap.xml\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/sitemap.xml\",\"className\":\"footer-link\",\"children\":\"XML Sitemap\"}]}]\n26:[\"$\",\"li\",\"/llms.txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/llms.txt\",\"className\":\"footer-link\",\"children\":\"llms.txt\"}]}]\n27:[\"$\",\"li\",\"/ai.txt\",{\"children\":[\"$\",\"$L1a\",null,{\"href\":\"/ai.txt\",\"className\":\"footer-link\",\"children\":\"ai.txt\"}]}]\n28:[\"$\",\"div\",null,{\"style\":{\"borderTop\":\"1px solid var(--color-teal-gray)\",\"paddingTop\":24,\"display\":\"flex\",\"justifyContent\":\"space-between\",\"alignItems\":\"center\",\"flexWrap\":\"wrap\",\"gap\":16},\"children\":[[\"$\",\"p\",null,{\"style\":{\"fontSize\":12,\"color\":\"var(--color-cool-gray)\"},\"children\":[\"© \",2026,\" Geodocs.dev. \",\"Bảo lưu mọi quyền.\"]}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":12,\"color\":\"var(--color-cool-gray)\"},\"children\":[[\"$\",\"a\",null,{\"href\":\"mailto:contact@geodocs.dev\",\"className\":\"footer-link\",\"children\":\"contact@geodocs.dev\"}],\" · \",\"Xây dựng cho con người và AI agents.\"]}]]}]\n29:[\"$\",\"style\",null,{\"children\":\"\\n .footer-link {\\n font-size: 13px;\\n color: var(--color-silver-teal);\\n text-decoration: none;\\n transition: color 0.2s ease;\\n }\\n .footer-link:hover {\\n color: var(--color-white);\\n }\\n \"}]\n30:T751,"])</script><script>self.__next_f.push([1,"{\"@context\":\"https://schema.org\",\"@type\":\"FAQPage\",\"mainEntity\":[{\"@type\":\"Question\",\"name\":\"Does the order of words in a slug matter for AI citations?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Yes, but less than for traditional SEO. AI engines tokenize slugs and match them against the canonical question; word order is one signal among many. Place the most identity-bearing word (the entity or canonical noun) first when possible.\"}},{\"@type\":\"Question\",\"name\":\"Should I use .html or no extension?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Modern AI engines treat both equivalently as long as the response is HTML and the canonical is correct. New sites should default to extensionless URLs for cleaner citations.\"}},{\"@type\":\"Question\",\"name\":\"Can I shorten URLs through a redirector for AI citations?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Avoid shortening on your own site. Redirector links (bit.ly, custom shorteners) appear less stable to AI engines and are sometimes downranked because they cannot be parsed for topical signal.\"}},{\"@type\":\"Question\",\"name\":\"Do trailing slashes really change citation share?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"In practice, yes — when AI engines see two URLs serve identical content, they pick one canonically. If you do not declare which, the choice is non-deterministic and citations split between variants. A site-wide 301 to your canonical convention solves this in a single deploy.\"}},{\"@type\":\"Question\",\"name\":\"How do fragment identifiers help LLMs cite my page more precisely?\",\"acceptedAnswer\":{\"@type\":\"Answer\",\"text\":\"Fragments let an AI engine cite a specific section rather than the whole page, which is strictly more useful to readers. Pages with stable section IDs earn more deep-link citations from Perplexity and Gemini Deep Research, where citations often target the most relevant section.\"}}]}"])</script><script>self.__next_f.push([1,"2c:[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"suppressHydrationWarning\":true,\"dangerouslySetInnerHTML\":{\"__html\":\"$30\"}}]\n33:T28df,"])</script><script>self.__next_f.push([1,"\u003cdiv class=\"ai-summary\"\u003e\u003cp\u003eAI engines treat URLs as citation identifiers, not just retrieval pointers. Short kebab-case slugs, shallow depth, canonical handling of query parameters, consistent trailing slashes, and stable fragment IDs all increase the odds your URL is the one cited — and the one followed when a user clicks an AI-generated answer.\u003c/p\u003e\u003c/div\u003e\n\u003ch2 id=\"tl-dr\"\u003eTL;DR\u003c/h2\u003e\n\u003cp\u003eUse short kebab-case slugs (3-5 words), keep paths at 2-3 levels deep, declare a canonical for any URL with marketing or tracking parameters, pick one trailing-slash convention and enforce it with 301s, reserve #fragment for in-page jumps (not for distinct content). Never break a URL after publication. AI engines deduplicate and rank URLs differently than Google's blue links — Ahrefs found AI Mode and AI Overviews cite the same URL only ~13.7% of the time across overlapping queries (Search Engine Journal, 2025). URL stability is what makes a citation portable across engines.\u003c/p\u003e\n\u003ch2 id=\"why-url-structure-matters-for-ai-citations\"\u003eWhy URL structure matters for AI citations\u003c/h2\u003e\n\u003cp\u003eA URL is the citation. When ChatGPT, Perplexity, Gemini, or Google AI Overviews attach a source to an answer, the URL is what readers click and what other AI engines cross-reference. Three properties drive citation behaviour:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eParsability. AI engines extract structure from the URL itself — domain, section, slug — to determine topical category and freshness signals.\u003c/li\u003e\n\u003cli\u003eStability. Citations depreciate when URLs change. Engines re-crawl on different cadences; a URL that 301's mid-cycle can drop from one engine while still appearing in another.\u003c/li\u003e\n\u003cli\u003eDeduplication. Engines collapse near-duplicates (with/without trailing slash, with/without ?ref=...) into a single canonical citation. The canonical you declare is the one they cite.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003eIndependent analyses show AI engines do not simply re-rank Google: only ~12% of AI-cited URLs appear in Google's top 10 organic for the same query (ZipTie, 2026). Retrieval is its own pipeline, and clean URLs help your page survive every stage of it.\u003c/p\u003e\n\u003ch2 id=\"slug-design\"\u003eSlug design\u003c/h2\u003e\n\u003cp\u003eThe slug is the most-extracted segment of the URL. Best practice for AI search:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLength: 3-5 meaningful words. Long enough to disambiguate, short enough to stay under ~60-70 characters total URL length.\u003c/li\u003e\n\u003cli\u003eFormat: kebab-case lowercase. Hyphens separate words; no underscores, no camelCase, no spaces. Search engines have treated hyphens as word boundaries since 2007, and AI engines follow the same convention.\u003c/li\u003e\n\u003cli\u003eWords: nouns and entity names. Match the canonical question or the canonical entity. Drop stopwords (\"the\", \"a\", \"for\") unless they are part of an entity name.\u003c/li\u003e\n\u003cli\u003eNo dates unless the page is dated. /2024-q4-roadmap is fine; /2024-best-crm is a maintenance trap.\u003c/li\u003e\n\u003cli\u003eNo category numbers. Pick stable terms; numeric IDs are opaque.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cdiv class=\"table-responsive\"\u003e\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003eBad slug\u003c/th\u003e\u003cth\u003eBetter slug\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\u003ctd\u003e/post?id=12345\u003c/td\u003e\u003ctd\u003e/url-structure-ai-search-best-practices\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e/2025BestCRM_Tools\u003c/td\u003e\u003ctd\u003e/best-crm-tools\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e/articles/what-is-the-difference-between-rss-and-atom\u003c/td\u003e\u003ctd\u003e/rss-vs-atom\u003c/td\u003e\u003c/tr\u003e\u003ctr\u003e\u003ctd\u003e/blog/this-is-our-new-feature-launch\u003c/td\u003e\u003ctd\u003e/feature-launch-q3-2026\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\u003c/div\u003e\n\u003ch2 id=\"depth-and-hierarchy\"\u003eDepth and hierarchy\u003c/h2\u003e\n\u003cp\u003eTwo to three path segments is the sweet spot:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2 segments for top-level concepts: /technical/structured-data-for-ai-search.\u003c/li\u003e\n\u003cli\u003e3 segments for sub-topics or series: /case-studies/saas/atlassian-aeo-rollout.\u003c/li\u003e\n\u003cli\u003e4+ segments signal \"deep archive\" to AI engines and rank lower in retrieval.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMap each path segment to a hub: /technical/ is itself a citable page; /technical/structured-data-for-ai-search is a spoke that links back. AI engines that crawl the hub gain context for siblings — useful when one query fan-out branches into adjacent sub-queries.\u003c/p\u003e\n\u003ch2 id=\"query-parameters\"\u003eQuery parameters\u003c/h2\u003e\n\u003cp\u003eLLMs and AI crawlers handle parameters inconsistently. Single Grain's analysis describes the practical pattern: tracking parameters (?utm_source=...) are usually stripped, but functional ones (?lang=en, ?page=2) are preserved (Single Grain, 2026). Two rules:\u003c/p\u003e\n\u003col\u003e\n\u003cli\u003eDeclare a canonical with \u003clink rel=\"canonical\"\u003e for every variant. The canonical is what AI engines cite, regardless of which variant the user clicked.\u003c/li\u003e\n\u003cli\u003eUse parameters only for state, not content. /products?id=42 is fragile; /products/42-widget-pro is citable. Reserve query strings for filters, sort orders, and tracking — never for core content identity.\u003c/li\u003e\n\u003c/ol\u003e\n\u003cp\u003ePages that accept arbitrary parameters (search results, faceted listings) should noindex parameter combinations and surface a small set of curated landing pages for AI engines to cite.\u003c/p\u003e\n\u003ch2 id=\"trailing-slashes\"\u003eTrailing slashes\u003c/h2\u003e\n\u003cp\u003ePick one and enforce it. Both https://example.com/page and https://example.com/page/ resolve, but if both serve the same content with no canonical, AI engines may cite either form, splitting citation share. Conventions:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTrailing slash for \"section\" or \"directory\" routes (/technical/).\u003c/li\u003e\n\u003cli\u003eNo trailing slash for \"leaf\" content (/technical/url-structure-ai-search-best-practices).\u003c/li\u003e\n\u003cli\u003e301 the non-canonical variant so crawlers consolidate.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhichever convention you pick, apply it consistently and serve a 301 (not 302) for the alternate form.\u003c/p\u003e\n\u003ch2 id=\"fragment-identifiers\"\u003eFragment identifiers\u003c/h2\u003e\n\u003cp\u003eThe #section portion of a URL is invisible to most server-side analytics but very visible to AI engines, which use anchors for citation precision. Patterns to follow:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd id attributes to H2 and H3 headings so the URL /page#how-it-works jumps to a specific section.\u003c/li\u003e\n\u003cli\u003eUse stable, semantic IDs. #how-it-works is good; #section-3 is fragile.\u003c/li\u003e\n\u003cli\u003eDo not route content via fragment. Single-page apps that load distinct content based on #/route are invisible to most AI crawlers; render the same content at a real URL.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhen AI engines cite a long-form article, they often cite the URL with a fragment to a specific section. If your IDs are stable, the citation lands the reader on the right paragraph; if you renumber, citations break silently.\u003c/p\u003e\n\u003ch2 id=\"url-stability-rules\"\u003eURL stability rules\u003c/h2\u003e\n\u003cp\u003eOnce published, a URL should never change without a redirect plan. Practical guardrails:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTreat the URL as identity. If the title changes, do not re-slug. AI engines that have already cached the URL will keep citing it.\u003c/li\u003e\n\u003cli\u003e301 every move. Keep the redirect alive indefinitely; AI crawlers re-validate citations on long cadences (weeks to months).\u003c/li\u003e\n\u003cli\u003eAvoid redirect chains. AI crawlers commonly abandon chains beyond two hops.\u003c/li\u003e\n\u003cli\u003eWatch for accidental 404s. A returned 404 on a previously cited URL often translates into the citation being dropped at the next crawl.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"idn-and-non-ascii-characters\"\u003eIDN and non-ASCII characters\u003c/h2\u003e\n\u003cp\u003eInternationalized Domain Names (IDN) and non-ASCII slug characters work but introduce risk:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePunycode-encode the domain at the registrar level (xn--...).\u003c/li\u003e\n\u003cli\u003ePercent-encode non-ASCII slug characters for portability.\u003c/li\u003e\n\u003cli\u003eFor multi-language sites, prefer subdirectories (/de/ rather than IDN domains) plus hreflang for AI engines that respect it.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"common-mistakes-that-hurt-ai-citations\"\u003eCommon mistakes that hurt AI citations\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eInconsistent trailing slashes split citation share between two near-duplicates.\u003c/li\u003e\n\u003cli\u003eMarketing-tracking parameters in the canonical link, fragmenting citation telemetry.\u003c/li\u003e\n\u003cli\u003eGeneric slugs like /post-1234 that strip topical signal.\u003c/li\u003e\n\u003cli\u003eRenumbered fragment IDs that silently break long-tail citations.\u003c/li\u003e\n\u003cli\u003eMulti-hop redirect chains that AI crawlers abandon.\u003c/li\u003e\n\u003cli\u003eFragment-based routing on SPAs that hides content from AI bots.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2 id=\"how-to-audit-your-urls\"\u003eHow to audit your URLs\u003c/h2\u003e\n\u003col\u003e\n\u003cli\u003eCrawl the site with Screaming Frog or Sitebulb and export every URL with status code, canonical, and \u003ctitle\u003e.\u003c/li\u003e\n\u003cli\u003eFilter for parameters, multiple trailing-slash variants, and 4+ depth.\u003c/li\u003e\n\u003cli\u003eSpot-check 20 of your most-cited URLs in ChatGPT, Perplexity, and AI Mode; confirm the same URL appears in each.\u003c/li\u003e\n\u003cli\u003ePatch redirect chains, declare canonicals, and add stable id attributes to headings.\u003c/li\u003e\n\u003cli\u003eRe-run the citation panel in 30 days.\u003c/li\u003e\n\u003c/ol\u003e\n\u003ch2 id=\"faq\"\u003eFAQ\u003c/h2\u003e\n\u003ch3 id=\"q-does-the-order-of-words-in-a-slug-matter-for-ai-citations\"\u003eQ: Does the order of words in a slug matter for AI citations?\u003c/h3\u003e\n\u003cp\u003eYes, but less than for traditional SEO. AI engines tokenize slugs and match them against the canonical question; word order is one signal among many. Place the most identity-bearing word (the entity or canonical noun) first when possible.\u003c/p\u003e\n\u003ch3 id=\"q-should-i-use-html-or-no-extension\"\u003eQ: Should I use .html or no extension?\u003c/h3\u003e\n\u003cp\u003eModern AI engines treat both equivalently as long as the response is HTML and the canonical is correct. New sites should default to extensionless URLs for cleaner citations.\u003c/p\u003e\n\u003ch3 id=\"q-can-i-shorten-urls-through-a-redirector-for-ai-citations\"\u003eQ: Can I shorten URLs through a redirector for AI citations?\u003c/h3\u003e\n\u003cp\u003eAvoid shortening on your own site. Redirector links (bit.ly, custom shorteners) appear less stable to AI engines and are sometimes downranked because they cannot be parsed for topical signal.\u003c/p\u003e\n\u003ch3 id=\"q-do-trailing-slashes-really-change-citation-share\"\u003eQ: Do trailing slashes really change citation share?\u003c/h3\u003e\n\u003cp\u003eIn practice, yes — when AI engines see two URLs serve identical content, they pick one canonically. If you do not declare which, the choice is non-deterministic and citations split between variants. A site-wide 301 to your canonical convention solves this in a single deploy.\u003c/p\u003e\n\u003ch3 id=\"q-how-do-fragment-identifiers-help-llms-cite-my-page-more-precisely\"\u003eQ: How do fragment identifiers help LLMs cite my page more precisely?\u003c/h3\u003e\n\u003cp\u003eFragments let an AI engine cite a specific section rather than the whole page, which is strictly more useful to readers. Pages with stable section IDs earn more deep-link citations from Perplexity and Gemini Deep Research, where citations often target the most relevant section.\u003c/p\u003e"])</script><script>self.__next_f.push([1,"2d:[\"$\",\"div\",null,{\"style\":{\"display\":\"grid\",\"gridTemplateColumns\":\"1fr min(var(--content-max-width), 100%) 1fr\",\"gap\":0,\"maxWidth\":1200,\"margin\":\"0 auto\",\"padding\":\"48px 24px 80px\"},\"children\":[[\"$\",\"div\",null,{}],[\"$\",\"article\",null,{\"children\":[[\"$\",\"h1\",null,{\"style\":{\"fontFamily\":\"var(--font-display)\",\"fontSize\":\"clamp(1.75rem, 4vw, 2.5rem)\",\"fontWeight\":500,\"lineHeight\":1.2,\"color\":\"var(--text-heading)\",\"marginBottom\":16},\"children\":\"URL Structure Best Practices for AI Search Citations\"}],[\"$\",\"div\",null,{\"className\":\"metadata-bar\",\"style\":{\"marginBottom\":24},\"children\":[[\"$\",\"span\",null,{\"className\":\"metadata-bar__tag metadata-bar__tag--section\",\"children\":\"technical\"}],[\"$\",\"span\",null,{\"className\":\"metadata-bar__tag\",\"children\":\"guide\"}],[\"$\",\"span\",null,{\"className\":\"metadata-bar__tag\",\"children\":\"intermediate\"}],[\"$\",\"span\",null,{\"className\":\"metadata-bar__dot\"}],[\"$\",\"span\",null,{\"children\":\"7 phút đọc\"}],[\"$\",\"span\",null,{\"className\":\"metadata-bar__dot\"}],[\"$\",\"span\",null,{\"children\":\"1,400 từ\"}],[[\"$\",\"span\",null,{\"className\":\"metadata-bar__dot\"}],[\"$\",\"span\",null,{\"children\":\"Cập nhật Apr 2026\"}]]]}],[\"$\",\"$L31\",null,{\"title\":\"URL Structure Best Practices for AI Search Citations\",\"url\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\"}],[\"$\",\"$L32\",null,{\"title\":\"URL Structure Best Practices for AI Search Citations\",\"url\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\",\"section\":\"technical\",\"slug\":\"url-structure-ai-search-best-practices\"}],[\"$\",\"div\",null,{\"className\":\"prose\",\"dangerouslySetInnerHTML\":{\"__html\":\"$33\"}}],\"$L34\",false]}],\"$L35\"]}]\n"])</script><script>self.__next_f.push([1,"2e:[\"$\",\"style\",null,{\"children\":\"\\n @media (max-width: 1024px) {\\n .toc-sidebar { display: none !important; }\\n }\\n @media (min-width: 1025px) {\\n article {\\n /* override grid for 3-col with TOC */\\n }\\n }\\n .article-tag-link:hover {\\n border-color: var(--color-dark-green) !important;\\n color: var(--text-primary) !important;\\n background: rgba(0, 237, 100, 0.06) !important;\\n }\\n \"}]\n2f:[\"$\",\"$L36\",null,{\"dict\":\"$c:1:props:dict:newsletter\"}]\n"])</script><script>self.__next_f.push([1,"34:[\"$\",\"div\",null,{\"style\":{\"marginTop\":64},\"children\":[[\"$\",\"h2\",null,{\"style\":{\"fontSize\":18,\"fontWeight\":600,\"marginBottom\":16,\"paddingBottom\":8,\"borderBottom\":\"1px solid var(--border-default)\"},\"children\":\"Bài viết liên quan\"}],[\"$\",\"div\",null,{\"style\":{\"display\":\"grid\",\"gridTemplateColumns\":\"repeat(auto-fill, minmax(280px, 1fr))\",\"gap\":16},\"children\":[[\"$\",\"$L1a\",\"404-page-ai-crawler-handling\",{\"href\":\"/vi/technical/404-page-ai-crawler-handling\",\"style\":{\"textDecoration\":\"none\"},\"data-related-article\":\"404-page-ai-crawler-handling\",\"data-related-position\":1,\"children\":[\"$\",\"div\",null,{\"className\":\"card\",\"children\":[[\"$\",\"span\",null,{\"className\":\"badge badge-green\",\"style\":{\"marginBottom\":8},\"children\":\"guide\"}],[\"$\",\"h3\",null,{\"style\":{\"fontSize\":15,\"fontWeight\":600,\"color\":\"var(--text-heading)\",\"marginBottom\":4},\"children\":\"404 Page AI Crawler Handling: Avoiding Citation Loss During Migrations\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":13,\"color\":\"var(--text-secondary)\",\"lineHeight\":1.5},\"children\":\"Migration playbook for keeping AI citations during URL changes — hard 404 vs soft 404, 410 Gone, redirect chains, sitemap cleanup, and refetch monitoring.\"}]]}]}],[\"$\",\"$L1a\",\"accept-encoding-for-ai-crawlers\",{\"href\":\"/vi/technical/accept-encoding-for-ai-crawlers\",\"style\":{\"textDecoration\":\"none\"},\"data-related-article\":\"accept-encoding-for-ai-crawlers\",\"data-related-position\":2,\"children\":[\"$\",\"div\",null,{\"className\":\"card\",\"children\":[[\"$\",\"span\",null,{\"className\":\"badge badge-green\",\"style\":{\"marginBottom\":8},\"children\":\"specification\"}],[\"$\",\"h3\",null,{\"style\":{\"fontSize\":15,\"fontWeight\":600,\"color\":\"var(--text-heading)\",\"marginBottom\":4},\"children\":\"Accept-Encoding (Brotli, Gzip) for AI Crawlers\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":13,\"color\":\"var(--text-secondary)\",\"lineHeight\":1.5},\"children\":\"Specification for serving Brotli, gzip, and zstd to AI crawlers via Accept-Encoding negotiation: which bots support which codecs, fallback rules, and Vary handling.\"}]]}]}],[\"$\",\"$L1a\",\"accept-language-ai-crawlers\",{\"href\":\"/vi/technical/accept-language-ai-crawlers\",\"style\":{\"textDecoration\":\"none\"},\"data-related-article\":\"accept-language-ai-crawlers\",\"data-related-position\":3,\"children\":[\"$\",\"div\",null,{\"className\":\"card\",\"children\":[[\"$\",\"span\",null,{\"className\":\"badge badge-green\",\"style\":{\"marginBottom\":8},\"children\":\"specification\"}],[\"$\",\"h3\",null,{\"style\":{\"fontSize\":15,\"fontWeight\":600,\"color\":\"var(--text-heading)\",\"marginBottom\":4},\"children\":\"Accept-Language Handling for AI Crawlers\"}],[\"$\",\"p\",null,{\"style\":{\"fontSize\":13,\"color\":\"var(--text-secondary)\",\"lineHeight\":1.5},\"children\":\"Specification for handling Accept-Language with AI crawlers: avoid auto-redirects, expose hreflang, prefer separate locale URLs, and preserve citation eligibility.\"}]]}]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"35:[\"$\",\"div\",null,{\"style\":{\"paddingLeft\":40},\"className\":\"toc-sidebar\",\"children\":[\"$\",\"nav\",null,{\"style\":{\"position\":\"sticky\",\"top\":88,\"fontSize\":13,\"lineHeight\":1.6,\"maxHeight\":\"calc(100vh - 100px)\",\"overflowY\":\"auto\"},\"children\":[[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"var(--font-mono)\",\"fontSize\":10,\"fontWeight\":600,\"textTransform\":\"uppercase\",\"letterSpacing\":2,\"color\":\"var(--color-cool-gray)\",\"marginBottom\":12},\"children\":\"Trên trang này\"}],[[\"$\",\"a\",\"tl-dr\",{\"href\":\"#tl-dr\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"TL;DR\"}],[\"$\",\"a\",\"why-url-structure-matters-for-ai-citations\",{\"href\":\"#why-url-structure-matters-for-ai-citations\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Why URL structure matters for AI citations\"}],[\"$\",\"a\",\"slug-design\",{\"href\":\"#slug-design\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Slug design\"}],[\"$\",\"a\",\"depth-and-hierarchy\",{\"href\":\"#depth-and-hierarchy\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Depth and hierarchy\"}],[\"$\",\"a\",\"query-parameters\",{\"href\":\"#query-parameters\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Query parameters\"}],[\"$\",\"a\",\"trailing-slashes\",{\"href\":\"#trailing-slashes\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Trailing slashes\"}],[\"$\",\"a\",\"fragment-identifiers\",{\"href\":\"#fragment-identifiers\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Fragment identifiers\"}],[\"$\",\"a\",\"url-stability-rules\",{\"href\":\"#url-stability-rules\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"URL stability rules\"}],[\"$\",\"a\",\"idn-and-non-ascii-characters\",{\"href\":\"#idn-and-non-ascii-characters\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"IDN and non-ASCII characters\"}],[\"$\",\"a\",\"common-mistakes-that-hurt-ai-citations\",{\"href\":\"#common-mistakes-that-hurt-ai-citations\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"Common mistakes that hurt AI citations\"}],[\"$\",\"a\",\"how-to-audit-your-urls\",{\"href\":\"#how-to-audit-your-urls\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"How to audit your URLs\"}],[\"$\",\"a\",\"faq\",{\"href\":\"#faq\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":0,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"none\"},\"children\":\"FAQ\"}],[\"$\",\"a\",\"q-does-the-order-of-words-in-a-slug-matter-for-ai-citations\",{\"href\":\"#q-does-the-order-of-words-in-a-slug-matter-for-ai-citations\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":16,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"1px solid var(--border-default)\"},\"children\":\"Q: Does the order of words in a slug matter for AI citations?\"}],[\"$\",\"a\",\"q-should-i-use-html-or-no-extension\",{\"href\":\"#q-should-i-use-html-or-no-extension\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":16,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"1px solid var(--border-default)\"},\"children\":\"Q: Should I use .html or no extension?\"}],\"$L37\",\"$L38\",\"$L39\"]]}]}]\n"])</script><script>self.__next_f.push([1,"37:[\"$\",\"a\",\"q-can-i-shorten-urls-through-a-redirector-for-ai-citations\",{\"href\":\"#q-can-i-shorten-urls-through-a-redirector-for-ai-citations\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":16,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"1px solid var(--border-default)\"},\"children\":\"Q: Can I shorten URLs through a redirector for AI citations?\"}]\n38:[\"$\",\"a\",\"q-do-trailing-slashes-really-change-citation-share\",{\"href\":\"#q-do-trailing-slashes-really-change-citation-share\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":16,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"1px solid var(--border-default)\"},\"children\":\"Q: Do trailing slashes really change citation share?\"}]\n39:[\"$\",\"a\",\"q-how-do-fragment-identifiers-help-llms-cite-my-page-more-precisely\",{\"href\":\"#q-how-do-fragment-identifiers-help-llms-cite-my-page-more-precisely\",\"style\":{\"display\":\"block\",\"padding\":\"4px 0\",\"paddingLeft\":16,\"color\":\"var(--text-secondary)\",\"textDecoration\":\"none\",\"transition\":\"color 0.15s ease\",\"borderLeft\":\"1px solid var(--border-default)\"},\"children\":\"Q: How do fragment identifiers help LLMs cite my page more precisely?\"}]\n"])</script><script>self.__next_f.push([1,"12:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"3a:I[27201,[\"/_next/static/chunks/0vy55-f9yx2lf.js\",\"/_next/static/chunks/0d3shmwh5_nmn.js\",\"/_next/static/chunks/027z30oepz30q.js\",\"/_next/static/chunks/0to0fsue-2tey.js\",\"/_next/static/chunks/05cra..ka3fzk.js\"],\"IconMark\"]\nf:null\n"])</script><script>self.__next_f.push([1,"14:[[\"$\",\"title\",\"0\",{\"children\":\"URL Structure Best Practices for AI Search Citations\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"URL structure affects how AI engines parse, cite, and follow links. Best practices for slug length, depth, parameters, fragments, and stability.\"}],[\"$\",\"meta\",\"2\",{\"name\":\"keywords\",\"content\":\"URL structure AI search,URL hygiene AI citations,slug best practices,URL parameters LLM,trailing slash AI search\"}],[\"$\",\"meta\",\"3\",{\"name\":\"robots\",\"content\":\"noindex, follow\"}],[\"$\",\"meta\",\"4\",{\"name\":\"html-lang\",\"content\":\"vi\"}],[\"$\",\"link\",\"5\",{\"rel\":\"canonical\",\"href\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\"}],[\"$\",\"link\",\"6\",{\"rel\":\"alternate\",\"hrefLang\":\"en\",\"href\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\"}],[\"$\",\"link\",\"7\",{\"rel\":\"alternate\",\"hrefLang\":\"x-default\",\"href\":\"https://geodocs.dev/technical/url-structure-ai-search-best-practices\"}],[\"$\",\"meta\",\"8\",{\"property\":\"og:title\",\"content\":\"URL Structure Best Practices for AI Search Citations\"}],[\"$\",\"meta\",\"9\",{\"property\":\"og:description\",\"content\":\"URL structure affects how AI engines parse, cite, and follow links. Best practices for slug length, depth, parameters, fragments, and stability.\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:image\",\"content\":\"https://geodocs.dev/api/og?title=URL%20Structure%20Best%20Practices%20for%20AI%20Search%20Citations\u0026section=technical\u0026tag=URL%20structure%20AI%20search\u0026readingTime=7%20ph%C3%BAt%20%C4%91%E1%BB%8Dc\u0026lang=vi\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:image:width\",\"content\":\"1200\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:image:height\",\"content\":\"630\"}],[\"$\",\"meta\",\"13\",{\"property\":\"og:image:alt\",\"content\":\"URL Structure Best Practices for AI Search Citations\"}],[\"$\",\"meta\",\"14\",{\"property\":\"og:type\",\"content\":\"article\"}],[\"$\",\"meta\",\"15\",{\"property\":\"article:published_time\",\"content\":\"2026-04-29\"}],[\"$\",\"meta\",\"16\",{\"property\":\"article:modified_time\",\"content\":\"2026-04-29\"}],[\"$\",\"meta\",\"17\",{\"property\":\"article:author\",\"content\":\"Geodocs Research Team\"}],[\"$\",\"meta\",\"18\",{\"name\":\"twitter:card\",\"content\":\"summary_large_image\"}],[\"$\",\"meta\",\"19\",{\"name\":\"twitter:title\",\"content\":\"URL Structure Best Practices for AI Search Citations\"}],[\"$\",\"meta\",\"20\",{\"name\":\"twitter:description\",\"content\":\"URL structure affects how AI engines parse, cite, and follow links. Best practices for slug length, depth, parameters, fragments, and stability.\"}],[\"$\",\"meta\",\"21\",{\"name\":\"twitter:image\",\"content\":\"https://geodocs.dev/api/og?title=URL%20Structure%20Best%20Practices%20for%20AI%20Search%20Citations\u0026section=technical\u0026tag=URL%20structure%20AI%20search\u0026readingTime=7%20ph%C3%BAt%20%C4%91%E1%BB%8Dc\u0026lang=vi\"}],[\"$\",\"link\",\"22\",{\"rel\":\"shortcut icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"23\",{\"rel\":\"icon\",\"href\":\"/favicon.ico?favicon.0zl.ysuv3a32n.ico\",\"sizes\":\"48x48\",\"type\":\"image/x-icon\"}],[\"$\",\"link\",\"24\",{\"rel\":\"icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",\"25\",{\"rel\":\"apple-touch-icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"$L3a\",\"26\",{}]]\n"])</script></body></html>