SEO audit for rivehotel.com
Rive Hotel, Rabat, Morocco - Hotel Overview Page
Health 65/100 (fair) · 8 pages crawled · generated 2026-08-26
Download Markdown report (feed to ChatGPT / Claude / Cursor)Rive Hotel is the modern 4-star hotel that makes the very convenient location in the heart of Rabat’s vibrant Hassan district.
| Category | Score | Errors | Warnings | Notices |
|---|---|---|---|---|
| Security | 70 | 0 | 8 | 16 |
| Canonical | 81 | 0 | 5 | 0 |
| Structured Data | 81 | 0 | 5 | 0 |
| Budget | 89 | 0 | 3 | 0 |
| Indexability | 89 | 0 | 3 | 0 |
| Agent Readiness | 100 | 0 | 0 | 5 |
| Content | 100 | 0 | 0 | 5 |
| Social | 100 | 0 | 0 | 10 |
| Titles | 100 | 0 | 0 | 5 |
Warnings (5 rules)
warning Noindex page receives internal links (crawl-budget waste)
Rule budget.noindex_linked · Budget · 3 occurrence(s)
- https://rivehotel.com/contact.html — this noindex page has 8 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://rivehotel.com/, https://rivehotel.com/hotel-overview.html, https://rivehotel.com/hotel-tricks.html.
- https://rivehotel.com/cookie-policy.html — this noindex page has 8 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://rivehotel.com/, https://rivehotel.com/hotel-overview.html, https://rivehotel.com/hotel-tricks.html.
- https://rivehotel.com/privacy-policy.html — this noindex page has 8 internal inlink(s) — Googlebot follows them, fetches the page, then drops it unindexed, spending crawl budget for no indexing benefit (and the links leak equity). Remove/redirect the links, or drop the noindex if the page should be indexed. Linked from: https://rivehotel.com/, https://rivehotel.com/hotel-overview.html, https://rivehotel.com/hotel-tricks.html.
warning Missing canonical tag
Rule canonical.missing · Canonical · 5 occurrence(s)
warning Content-Type header doesn't match the actual content
Rule headers.content_type_mismatch · Security · 8 occurrence(s)
- https://rivehotel.com/ — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/area-guide.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/contact.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/cookie-policy.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/getting-to-hotel.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/hotel-overview.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/hotel-tricks.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
- https://rivehotel.com/privacy-policy.html — the Content-Type is "text/html" with no charset — the HTTP charset is authoritative and browsers otherwise guess the encoding, which can garble non-ASCII text (mojibake). Declare it explicitly: "text/html; charset=utf-8".
warning Page is noindex
Rule index.noindex · Indexability · 3 occurrence(s)
- https://rivehotel.com/contact.html — meta/X-Robots: meta=noindex
- https://rivehotel.com/cookie-policy.html — meta/X-Robots: meta=noindex
- https://rivehotel.com/privacy-policy.html — meta/X-Robots: meta=noindex
warning LocalBusiness schema missing required properties (name/address)
Rule schema.localbusiness_incomplete · Structured Data · 5 occurrence(s)
- https://rivehotel.com/ — LocalBusiness structured data is missing required property (address) — without them Google won't generate the rich result. Add each field (and validate with the Rich Results Test). It is also missing recommended properties (telephone, openingHoursSpecification, geo, priceRange), which enrich the result.
- https://rivehotel.com/area-guide.html — LocalBusiness structured data is missing required property (address) — without them Google won't generate the rich result. Add each field (and validate with the Rich Results Test). It is also missing recommended properties (telephone, openingHoursSpecification, geo, priceRange), which enrich the result.
- https://rivehotel.com/getting-to-hotel.html — LocalBusiness structured data is missing required property (address) — without them Google won't generate the rich result. Add each field (and validate with the Rich Results Test). It is also missing recommended properties (telephone, openingHoursSpecification, geo, priceRange), which enrich the result.
- https://rivehotel.com/hotel-overview.html — LocalBusiness structured data is missing required property (address) — without them Google won't generate the rich result. Add each field (and validate with the Rich Results Test). It is also missing recommended properties (telephone, openingHoursSpecification, geo, priceRange), which enrich the result.
- https://rivehotel.com/hotel-tricks.html — LocalBusiness structured data is missing required property (address) — without them Google won't generate the rich result. Add each field (and validate with the Rich Results Test). It is also missing recommended properties (telephone, openingHoursSpecification, geo, priceRange), which enrich the result.
Notices (10 rules)
notice No llms.txt for AI agents
Rule agent.llms_txt_missing · Agent Readiness · 1 occurrence(s)
- https://rivehotel.com/ — no llms.txt found at the site root — add one so AI agents get a curated site summary
notice No main landmark for AI agents
Rule agent.no_main_landmark · Agent Readiness · 4 occurrence(s)
- https://rivehotel.com/ — add a <main> element (or role=main) around the primary content
- https://rivehotel.com/cookie-policy.html — add a <main> element (or role=main) around the primary content
- https://rivehotel.com/hotel-overview.html — add a <main> element (or role=main) around the primary content
- https://rivehotel.com/privacy-policy.html — add a <main> element (or role=main) around the primary content
notice Main text is hard to read (low Flesch Reading Ease)
Rule content.readability_poor · Content · 3 occurrence(s)
- https://rivehotel.com/ — this page reads as difficult (Flesch Reading Ease 45, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
- https://rivehotel.com/area-guide.html — this page reads as difficult (Flesch Reading Ease 44, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
- https://rivehotel.com/hotel-overview.html — this page reads as difficult (Flesch Reading Ease 47, below 50) — long sentences and multi-syllable words make it hard to scan. Shorten sentences and prefer plainer words to widen your audience. Density can be legitimate for expert, technical or legal content, so judge it against who the page is for.
notice Missing <!DOCTYPE html> (quirks-mode rendering risk)
Rule encoding.doctype_missing · Content · 2 occurrence(s)
- https://rivehotel.com/ — no <!DOCTYPE html> in the response — add it to avoid quirks-mode rendering differences
- https://rivehotel.com/hotel-overview.html — no <!DOCTYPE html> in the response — add it to avoid quirks-mode rendering differences
notice Missing Open Graph tags
Rule og.missing · Social · 5 occurrence(s)
- https://rivehotel.com/ — og:title, og:description, og:image
- https://rivehotel.com/area-guide.html — og:title, og:description, og:image
- https://rivehotel.com/getting-to-hotel.html — og:title, og:description, og:image
- https://rivehotel.com/hotel-overview.html — og:title, og:description, og:image
- https://rivehotel.com/hotel-tricks.html — og:title, og:description, og:image
notice Missing recommended security headers
Rule security.missing_headers · Security · 8 occurrence(s)
- https://rivehotel.com/ — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/area-guide.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/contact.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/cookie-policy.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/getting-to-hotel.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/hotel-overview.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/hotel-tricks.html — HSTS, CSP, X-Content-Type-Options
- https://rivehotel.com/privacy-policy.html — HSTS, CSP, X-Content-Type-Options
notice target=_blank link without rel=noopener (tab-napping)
Rule security.unsafe_cross_origin_links · Security · 8 occurrence(s)
- https://rivehotel.com/ — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/area-guide.html — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/contact.html — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/cookie-policy.html — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/getting-to-hotel.html — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/hotel-overview.html — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/hotel-tricks.html — 2 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
- https://rivehotel.com/privacy-policy.html — 1 external link(s) use target="_blank" without rel="noopener" — the opened page can hijack your tab (reverse tab-napping). Add rel="noopener noreferrer".
notice Title tag is identical to the H1 (missed keyword variation)
Rule title.same_as_h1 · Titles · 3 occurrence(s)
- https://rivehotel.com/contact.html — the <title> and the H1 are identical — differentiate them to cover more query variation
- https://rivehotel.com/cookie-policy.html — the <title> and the H1 are identical — differentiate them to cover more query variation
- https://rivehotel.com/privacy-policy.html — the <title> and the H1 are identical — differentiate them to cover more query variation
notice Title is very short
Rule title.too_short · Titles · 2 occurrence(s)
- https://rivehotel.com/cookie-policy.html — 13 chars
- https://rivehotel.com/privacy-policy.html — 14 chars
notice Missing Twitter Card tag
Rule twitter.missing · Social · 5 occurrence(s)
| URL | Status | Indexable | Words | In-links |
|---|---|---|---|---|
| https://rivehotel.com/area-guide.html Area Guide - Rive Hotel |
200 | yes | 314 | 8 |
| https://rivehotel.com/contact.html Contact for Hotel Owners |
200 | no | 56 | 8 |
| https://rivehotel.com/cookie-policy.html Cookie Policy |
200 | no | 424 | 8 |
| https://rivehotel.com/getting-to-hotel.html Getting to Hotel - Rive Hotel |
200 | yes | 284 | 8 |
| https://rivehotel.com/hotel-overview.html Hotel Overview - Rive Hotel |
200 | yes | 357 | 8 |
| https://rivehotel.com/hotel-tricks.html Hotel Tricks - Rive Hotel |
200 | yes | 341 | 8 |
| https://rivehotel.com/privacy-policy.html Privacy Policy |
200 | no | 753 | 8 |
| https://rivehotel.com/ Rive Hotel, Rabat, Morocco - Hotel Overview Page |
200 | yes | 441 | 7 |
Audit your own site — free
157 checks, internal PageRank, render-diff. No signup, results in ~30s.