Discoverability audit
SEO validation.
A route-by-route checklist for canonical URLs, hreflang coverage, JSON-LD coverage, and indexability.
48
Routes tracked
14
Indexable pages
4
Dynamic templates
18
JSON-LD routes
Indexable marketing routes
| Route | Canonical | Hreflang | JSON-LD | Status | Notes |
|---|---|---|---|---|---|
Product overview/ | https://crumb.menu | en-IE + x-default | Organization, WebSite, SoftwareApplication | Indexable | Primary product and restaurant menu allergen service page. |
Menu allergen service/menu-service | https://crumb.menu/menu-service | en-IE + x-default | Service, BreadcrumbList | Indexable | Service landing page for one-source menu operations. |
Pricing/pricing | https://crumb.menu/pricing | en-IE + x-default | FAQPage, BreadcrumbList | Indexable | Plan comparison and conversion page. |
Compare/compare | https://crumb.menu/compare | en-IE + x-default | FAQPage, BreadcrumbList | Indexable | Comparison against PDFs, spreadsheets, and generic QR menu tools. |
14 EU allergens/allergens | https://crumb.menu/allergens | en-IE + x-default | FAQPage, BreadcrumbList | Indexable | EU allergen reference and hidden-source content. |
Menu modifications/features/modifications | https://crumb.menu/features/modifications | en-IE + x-default | BreadcrumbList | Indexable | Feature page for can-be-made-without workflows. |
Menu styles/styles | https://crumb.menu/styles | en-IE + x-default | BreadcrumbList | Indexable | Editorial, Typographic, Hybrid, and Matrix style page. |
Demo/demo | https://crumb.menu/demo | en-IE + x-default | BreadcrumbList | Indexable | Demo request and live menu entry point. |
Guides hub/guides | https://crumb.menu/guides | en-IE + x-default | CollectionPage, BreadcrumbList | Indexable | Editorial guide index. |
Guide article template/guides/$slug | Generated at runtime | en-IE + x-default | Article, BreadcrumbList | Dynamic | Canonical resolves to each published guide slug. |
LLM index/llm-index | https://crumb.menu/llm-index | en-IE + x-default | CollectionPage, BreadcrumbList | Indexable | AI crawler guide for llms.txt, llms-full.txt, and priority URLs. |
Contact/contact | https://crumb.menu/contact | en-IE + x-default | BreadcrumbList | Indexable | Sales, onboarding, and support contact route. |
About/about | https://crumb.menu/about | en-IE + x-default | BreadcrumbList | Indexable | Company and product positioning route. |
Changelog/changelog | https://crumb.menu/changelog | en-IE + x-default | ItemList, BreadcrumbList | Indexable | Product update and release history route. |
Careers/careers | https://crumb.menu/careers | en-IE + x-default | BreadcrumbList | Indexable | Hiring route; low-priority sitemap entry. |
Dynamic public routes and system endpoints
| Route | Canonical | Hreflang | JSON-LD | Status | Notes |
|---|---|---|---|---|---|
Published menu/m/$venueSlug/$menuSlug | Generated at runtime | Menu language alternates + x-default | Menu, Restaurant, BreadcrumbList | Dynamic | Canonical resolves per venue/menu. Hreflang alternates are emitted for supported menu languages. |
Published dish/m/$venueSlug/$menuSlug/$dishSlug | Generated at runtime | en-IE + x-default | MenuItem, Restaurant, BreadcrumbList | Dynamic | Canonical resolves per dish and uses the dish/menu social image context. |
Published wine list/w/$venueSlug/$wineListSlug | Generated at runtime | en-IE + x-default | Menu, Restaurant, BreadcrumbList | Dynamic | Canonical resolves per venue/wine list. |
Generated OG image/og/$venueSlug/$menuSlug | Generated at runtime | en-IE + x-default | None | System | Image endpoint for rich previews; not a document canonical. |
XML sitemap/sitemap.xml | Generated at runtime | en-IE + x-default | None | System | Lists indexable marketing pages plus published menus and wine lists. |
Noindex app and utility routes
| Route | Canonical | Hreflang | JSON-LD | Status | Notes |
|---|---|---|---|---|---|
Sign in/sign-in | https://crumb.menu/sign-in | en-IE + x-default | None | Noindex | Authentication route. |
Sign up/sign-up | https://crumb.menu/sign-up | en-IE + x-default | None | Noindex | Account creation route. |
Team invitation/invite/$token | Generated at runtime | en-IE + x-default | None | Noindex | Tokenized invitation route. |
Terms/terms | https://crumb.menu/terms | en-IE + x-default | None | Noindex | Legal page currently marked noindex until finalized. |
Privacy/privacy | https://crumb.menu/privacy | en-IE + x-default | None | Noindex | Legal/support page with app-adjacent copy. |
Dashboard/dashboard | https://crumb.menu/dashboard | en-IE + x-default | None | Noindex | Authenticated app surface. |
Menus/menus | https://crumb.menu/menus | en-IE + x-default | None | Noindex | Authenticated app surface. |
Menu import/menus/import | https://crumb.menu/menus/import | en-IE + x-default | None | Noindex | Authenticated app surface. |
Menu editor/menus/$menuId/edit | Generated at runtime | en-IE + x-default | None | Noindex | Authenticated app surface. |
Menu costs/menus/$menuId/costs | Generated at runtime | en-IE + x-default | None | Noindex | Authenticated app surface. |
Dishes/dishes | https://crumb.menu/dishes | en-IE + x-default | None | Noindex | Authenticated app surface. |
Ingredients/ingredients | https://crumb.menu/ingredients | en-IE + x-default | None | Noindex | Authenticated app surface. |
Insights/insights | https://crumb.menu/insights | en-IE + x-default | None | Noindex | Authenticated app surface. |
Dish insights/insights/dishes/$dishId | Generated at runtime | en-IE + x-default | None | Noindex | Authenticated app surface. |
Wine lists/wine-lists | https://crumb.menu/wine-lists | en-IE + x-default | None | Noindex | Authenticated app surface. |
Wine list editor/wine-lists/$wineListId/edit | Generated at runtime | en-IE + x-default | None | Noindex | Authenticated app surface. |
Team/team | https://crumb.menu/team | en-IE + x-default | None | Noindex | Authenticated app surface. |
Settings/settings | https://crumb.menu/settings | en-IE + x-default | None | Noindex | Authenticated app surface. |
Publish/publish | https://crumb.menu/publish | en-IE + x-default | None | Noindex | Authenticated app surface. |
Onboarding/onboarding | https://crumb.menu/onboarding | en-IE + x-default | None | Noindex | Authenticated setup surface. |
Onboarding success/onboarding/success | https://crumb.menu/onboarding/success | en-IE + x-default | None | Noindex | Authenticated setup surface. |
Superuser/superuser | https://crumb.menu/superuser | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser audit/superuser/audit | https://crumb.menu/superuser/audit | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser onboarding/superuser/onboarding | https://crumb.menu/superuser/onboarding | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser roles/superuser/roles | https://crumb.menu/superuser/roles | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser users/superuser/users | https://crumb.menu/superuser/users | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser workspaces/superuser/workspaces | https://crumb.menu/superuser/workspaces | en-IE + x-default | None | Noindex | Protected operations surface. |
Superuser workspace detail/superuser/workspaces/$workspaceId | Generated at runtime | en-IE + x-default | None | Noindex | Protected operations surface. |