The 47-check framework structure

The checks are organized into 7 categories, each with specific items and severity ratings. The framework:

Each check follows the same format:

The framework is tool-agnostic — checks reference what to look for, not which specific tool to use. We typically use a combination of Screaming Frog, Sitebulb, Google Search Console, Lighthouse, Schema.org validator, and manual checks.

Category 1 — Crawl and indexability (9 checks)

The foundations of being findable. Failures here typically block ranking entirely.

01
Check 1 — Robots.txt exists and is valid
Sites missing robots.txt or with malformed robots.txt cause crawl problems. Test via direct URL access (yourdomain.com/robots.txt). Should be present, syntactically valid, and not blocking what shouldn't be blocked.
02
Check 2 — Robots.txt doesn't block important content
Common mistakes: blocking /wp-admin/ (fine), blocking /admin/ (fine), accidentally blocking /products/ or /services/ (terrible). Audit Allow/Disallow rules carefully.
03
Check 3 — XML sitemap exists and is valid
/sitemap.xml or referenced from robots.txt. Should validate against XML schema, include only canonical URLs, exclude redirected URLs.
04
Check 4 — Sitemap is submitted in Search Console
Beyond just existing, the sitemap must be submitted in Google Search Console for proper crawl scheduling.
05
Check 5 — No critical pages noindexed
Pages with `<meta name="robots" content="noindex">` won't rank. Audit for accidental noindex tags on important pages. Common mistake: noindex tags left over from staging environments.
06
Check 6 — Canonical tags present and correct
Every page should have a self-referencing canonical tag, except for intentional duplicates which canonical to the primary version. Common mistakes: missing canonicals on paginated pages, wrong canonicals on filtered pages, canonical loops.
07
Check 7 — No infinite crawl traps
Faceted navigation, search results pages, and tag/category pages can create infinite URL variations. Audit for crawl traps; use robots.txt or canonical tags to handle.
08
Check 8 — Internal linking structure complete
Every important page should be reachable from the homepage in 3 clicks or fewer. Orphan pages (no internal links pointing to them) typically don't rank.
09
Check 9 — 404 errors and broken internal links
Track 404 errors in Search Console; broken internal links waste crawl budget and dilute link equity.

Category 2 — Core Web Vitals and speed (7 checks)

Page speed is a direct ranking factor. Saudi mobile network quality varies; pages must load quickly across the network speed spectrum.

01
Check 10 — Largest Contentful Paint (LCP) under 2.5 seconds
Test via Lighthouse mobile, throttled to "Slow 4G". Saudi-specific: Arabic font loading often delays LCP. Use font-display: swap and preload key fonts.
02
Check 11 — Interaction to Next Paint (INP) under 200ms
INP replaced FID as the input-responsiveness metric. JavaScript-heavy pages often fail INP. Audit for heavy main-thread work.
03
Check 12 — Cumulative Layout Shift (CLS) under 0.1
Layout shifts during page load. Saudi-specific: RTL layout shifts can occur when Arabic fonts load. Reserve space for fonts, images, and ad slots.
04
Check 13 — Time to First Byte (TTFB) under 800ms
Server response time. Saudi-specific: hosting outside the region adds latency; consider Saudi POPs (Cloudflare has Saudi POPs in Jeddah and Riyadh).
05
Check 14 — Image optimization complete
All images compressed, modern formats (WebP, AVIF) used where supported, lazy-loaded below the fold, proper dimensions to avoid layout shift.
06
Check 15 — Critical CSS inlined
Above-the-fold CSS inlined to avoid render-blocking. Saudi-specific: RTL stylesheets sometimes get loaded separately, increasing render-blocking.
07
Check 16 — JavaScript optimization complete
Unused JavaScript removed, scripts deferred or async where possible, third-party scripts audited for impact.

Category 3 — Schema and structured data (6 checks)

Schema markup helps search engines understand content and enables rich results.

01
Check 17 — Organization schema on homepage
Should include name, logo, contact info, sameAs links to social profiles. Saudi-specific: include Saudi commercial registration and VAT number where available.
02
Check 18 — LocalBusiness schema for physical locations
For each location, full LocalBusiness schema with address, geo coordinates, opening hours, payment methods accepted (Mada/Tabby/Tamara/STC Pay as acceptedPaymentMethod), areaServed.
03
Check 19 — Product schema on product pages
Product/Offer schema with name, description, image, brand, sku, price, currency (SAR), availability. Critical for ecommerce.
04
Check 20 — Article schema on blog/content pages
Article schema with headline, description, datePublished, dateModified, author (Person or Organization), publisher, image. Affects AI Overview eligibility.
05
Check 21 — FAQ schema where applicable
Pages with FAQ sections should have FAQPage schema with Question/acceptedAnswer pairs. Saudi-specific: FAQ schema works in Arabic — use Arabic content in schema for Arabic pages.
06
Check 22 — Breadcrumb schema on hierarchical pages
BreadcrumbList schema showing path from homepage to current page. Surfaces in SERPs as breadcrumb navigation.

Category 4 — Mobile and responsive (5 checks)

Saudi traffic is ~90% mobile for most consumer sites. Mobile experience is the primary experience.

01
Check 23 — Mobile-friendly test passes
Use Google's Mobile-Friendly Test (or PageSpeed Insights mobile view). Saudi sites with desktop-first design often fail subtle mobile usability tests.
02
Check 24 — Viewport meta tag configured
`<meta name="viewport" content="width=device-width, initial-scale=1">` on every page. Without it, mobile rendering breaks.
03
Check 25 — Tap targets adequately sized
Buttons and links should be 48x48px minimum, with adequate spacing. Saudi mobile thumbs need same room as anywhere else.
04
Check 26 — Text legible without zooming
Body text 16px minimum on mobile. Saudi-specific: Arabic text needs to be slightly larger than equivalent English (~17-18px Arabic for equivalent readability to 15-16px English).
05
Check 27 — No horizontal scroll on mobile
Content fits viewport width. Saudi-specific: RTL content sometimes inadvertently scrolls horizontally due to incorrect CSS.

Category 5 — Security and privacy (5 checks)

Saudi data privacy regulations (PDPL - Personal Data Protection Law) require attention. Security is also a direct ranking factor.

01
Check 28 — HTTPS implemented site-wide
No mixed content warnings. All assets (images, scripts, CSS) served over HTTPS.
02
Check 29 — Valid SSL certificate
Certificate not expired, properly configured, no warnings in browsers.
03
Check 30 — HSTS header configured
HTTP Strict Transport Security prevents downgrade attacks. Add `Strict-Transport-Security: max-age=63072000; includeSubDomains` header.
04
Check 31 — Privacy policy compliant with Saudi PDPL
Saudi Personal Data Protection Law (active since 2023) requires specific elements in privacy policies: legal basis for processing, data subject rights, contact for data inquiries, transfer mechanisms. Update from generic GDPR-style policies.
05
Check 32 — Cookie consent properly implemented
Saudi PDPL doesn't require GDPR-style cookie banners but implementing them doesn't hurt. If you serve EU + Saudi traffic, you need GDPR-compliant consent anyway.

Category 6 — Multi-language / Arabic SEO (8 checks)

Saudi bilingual sites have specific multi-language SEO requirements beyond what generic SEO audits cover.

01
Check 33 — hreflang tags present and correct
Every page with a language variant has hreflang tags pointing to each variant. Use ar-SA for Saudi-targeted Arabic, en for English. Include x-default pointing to the international default.
02
Check 34 — hreflang return tags reciprocal
If Page A points to Page B via hreflang, Page B must point back to Page A. Asymmetric hreflang is ignored by Google.
03
Check 35 — Language matches content
HTML lang attribute matches actual content language. `<html lang="ar" dir="rtl">` for Arabic pages, `<html lang="en">` for English. No mismatches.
04
Check 36 — Direction attribute set for Arabic content
All Arabic pages have `dir="rtl"` set at the HTML or body level. Without it, browser rendering is incorrect.
05
Check 37 — URL structure supports both languages
Either subfolder (`/ar/` and `/en/`) or subdomain structure. Avoid query parameters (`?lang=ar`) which work poorly for SEO.
06
Check 38 — Arabic content has Arabic meta titles/descriptions
Common audit failure: Arabic page with English meta description. Both should be Arabic for Arabic pages.
07
Check 39 — Arabic schema content in Arabic
Schema markup fields (description, name, etc.) match page language. Arabic page = Arabic schema content.
08
Check 40 — Language switcher properly indexed
Language switcher links must be regular `<a href="">` links, not JavaScript-only. Search engines need to discover language variants via crawling.

Category 7 — Saudi-specific factors (7 checks)

Checks unique to Saudi-targeted sites that international SEO frameworks miss.

01
Check 41 — Saudi-specific schema accuracy
LocalBusiness schema includes Saudi address format (with both English and Arabic address fields where applicable), Saudi phone format (+966), Saudi currency (SAR), Saudi-specific payment methods (Mada, Tabby, Tamara, STC Pay) listed in acceptedPaymentMethod.
02
Check 42 — ZATCA invoice integration documented
For ecommerce sites, ZATCA Phase 2/3 compliance must be functional. Verify by completing a test transaction and confirming invoice generation. ZATCA non-compliance has business consequences beyond SEO but worth checking as part of audit.
03
Check 43 — Saudi government domain handling
If you link to or are linked from .gov.sa domains, ensure proper canonical handling. .gov.sa links are high-quality backlinks for Saudi SEO.
04
Check 44 — Maroof seal displayed (ecommerce)
Saudi Ministry of Commerce trust platform. Sites without Maroof seal convert lower from Saudi traffic. Visual presence in footer + product pages.
05
Check 45 — Saudi shipping integration completeness
For ecommerce: SMSA, Aramex, Saudi Post integration showing Saudi shipping options. International-only shipping signals "not really a Saudi store" and hurts conversion.
06
Check 46 — Saudi work week reflected in operations
Business hours, customer service hours, response time commitments all should reflect Sunday-Thursday Saudi work week, not Monday-Friday Western default. Check operational pages (Contact, Customer Service, Hours) for this.
07
Check 47 — Arabic phone number format correctly displayed
Saudi phone numbers in international format (+966 5XX XXX XXXX) with proper LTR direction even within RTL content. Set `dir="ltr"` on phone number containers to prevent reversal.

Severity scoring and prioritization

Each check is scored on a severity scale. Our default scoring:

01
Critical (severity 5)
Issue blocks ranking or causes significant ranking penalty. Fix immediately.

Examples: site-wide noindex tags, broken HTTPS, missing critical schema, blocked crawl access.

01
High (severity 4)
Issue substantially limits ranking potential. Fix within 2 weeks.

Examples: poor Core Web Vitals scores, missing key schemas, hreflang errors, sitemap problems.

01
Medium (severity 3)
Issue degrades ranking or user experience. Fix within 4-8 weeks.

Examples: incomplete schema, missing alt text, suboptimal page speed, missing FAQ schema.

01
Low (severity 2)
Minor issue, fix when convenient.

Examples: missing or wrong attributes, suboptimal mobile UX details, missing internal links.

01
Polish (severity 1)
Nice-to-have improvement.

Examples: image format upgrades to WebP, additional schema types, minor performance optimizations.

A typical Saudi site audit identifies 25-35 issues across the 47 checks, with 3-5 critical, 6-10 high, 8-12 medium, and the remainder low/polish.

Audit cadence and tooling

How often to run this framework and what tools support it:

01
Initial audit
Full 47-check framework at the start of any SEO engagement. Establishes baseline and prioritized fix queue.
02
Quarterly audits
Re-run the framework every 3 months on active sites. Catches new issues from feature launches, content additions, or technical changes.
03
Annual deep audit
Full framework re-run with deeper investigation of changing areas (new schema types, new Google requirements, new Saudi regulations).
04
Continuous monitoring
Search Console errors, Lighthouse score tracking, schema validator checks integrated into deployment pipeline.
05
Tool stack
- Screaming Frog SEO Spider — full site crawl for technical issues - Sitebulb — alternative crawler with better visualization - Google Search Console — Google's view of your site's issues - Google PageSpeed Insights / Lighthouse — performance auditing - Schema.org Validator — structured data validation - Google Rich Results Test — schema rich result eligibility - GTmetrix / WebPageTest — additional performance perspectives - Manual review — for Saudi-specific factors that tools miss

For Saudi sites wanting comprehensive technical SEO audits and ongoing optimization, our [technical SEO services](/services/seo/technical-seo/) handle the full 47-check framework plus implementation of fixes.

Related reading

More articles you may find useful

Get a written audit before you commit.

Start with a strategy call. We'll cover scope and pricing.

Message us on WhatsApp
FAQs

Common questions about Technical SEO Audit Framework: 47 Checks

How long does a full 47-check audit take?

Typically 6-12 hours of senior SEO work for a mid-size site (50-500 pages). Larger sites with extensive technical complexity (10,000+ products, multi-language, multi-market) can take 20-30 hours. The audit produces a documented findings report with prioritized fix recommendations. Implementation of fixes is separate work, scoped based on findings.

Can I run this audit myself or do I need an agency?

Technically yes — all the tools are available, and the framework is documented above. But the value of agency-driven audits is interpretation: a tool might surface 200 potential issues; an experienced SEO knows which 30 actually matter and how to prioritize. First-time self-audits typically miss critical issues and over-react to non-issues. For learning purposes or simple sites, DIY is reasonable. For business-critical SEO, agency audits typically pay back via better prioritization and faster fix implementation.

What's the relationship between technical SEO and content SEO?

Technical SEO is foundational — content can't rank if technical issues block it. But excellent technical SEO with weak content also won't rank. Both are necessary. The general pattern: technical SEO is "fix it once, maintain it ongoing"; content SEO is "ongoing investment". For Saudi sites, technical SEO investment typically resolves in 2-3 months of focused work; content SEO is a continuous program.

How often do Saudi-specific technical SEO requirements change?

Saudi regulatory requirements (ZATCA phases, PDPL implementation, Maroof requirements) update meaningfully every 6-12 months. International SEO standards (schema.org updates, Google algorithm changes) update continuously. Re-running this audit quarterly catches both layers of change. Sites that haven't been audited in 12+ months typically have substantial accumulated technical debt.

What's the typical impact of fixing technical SEO issues for a Saudi site?

Depends heavily on starting condition. Sites with multiple critical/high issues often see 30-80% organic traffic lift within 60-120 days of fixes. Sites with only low-severity issues see 5-15% incremental improvement. The biggest single-fix wins typically come from Core Web Vitals improvements (especially for mobile-heavy Saudi sites), hreflang corrections (unlocking Arabic SEO that was being suppressed), and schema additions (enabling rich results and AI Overview eligibility).

Message us on WhatsApp Get Quote