Kensink Labs
★ Framework14 sub-systemsReference
FRAMEWORK · 14 SUB-SYSTEMS

The full audit framework we run on every engagement.

Every check, every target state, every red flag we’ve seen blow up in production. This is the working reference — bookmark it, send it to your dev team, audit yourself against it before we even start.

§ 5.101 / 14

Crawlability & Indexation

Can search engines and AI crawlers reach every page that should be indexed, and nothing that shouldn’t?

Checks
  • robots.txt present, valid, not blocking critical paths
  • sitemap.xml referenced in robots.txt and contains only indexable URLs
  • Single canonical domain — all four variants 301 → one canonical
  • Self-referencing canonical tags on indexable pages
  • noindex directives audited — only on pages we want excluded
  • Indexation coverage (submitted vs indexed) — gap explained, not accidental
  • Soft 404s — zero tolerated on important pages
  • Orphan pages identified, then either linked or deleted
  • Crawl budget concentrated on valuable URLs (log-file analysis)
  • Rendered HTML === raw HTML for content (JavaScript rendering parity)
Red flags
  • Paginated archive URLs + faceted navigation eating crawl budget
  • Staging / preview URLs indexed by accident
  • noindex left over from a migration
  • Crawlers blocked at the WAF or CDN (common with Cloudflare defaults)
§ 5.202 / 14

Site Architecture & Internal Linking

Does the structure communicate topical authority and let humans + machines discover important content in ≤3 clicks?

Checks
  • Click depth ≤ 3 from homepage to any important page
  • Zero orphan pages
  • Zero broken internal links
  • Max 1-hop redirect chains
  • Descriptive anchor text — no ‘click here’ on important links
  • Breadcrumbs present + marked up with BreadcrumbList schema
  • Crawlable pagination — avoid pure infinite scroll
  • Evidence of coherent pillar-cluster topic structure
  • Mega-menu link dilution avoided — no pages with 300+ internal links
  • Pillar pages receive many contextual links from clusters
§ 5.303 / 14

Performance & Core Web Vitals

Do pages load fast enough that humans stay and crawlers allocate budget generously?

Checks
  • LCP ≤ 2.5s (field data, not lab)
  • INP ≤ 200ms
  • CLS ≤ 0.1
  • TTFB ≤ 400ms
  • TBT ≤ 200ms
  • Field data (CrUX / GSC) used as source of truth — lab data only for diagnosis
Red flags
  • Unoptimized hero images (not WebP/AVIF, not responsive, no width/height)
  • Render-blocking third-party scripts (chat widgets, GTM, analytics)
  • Font swap causing CLS
  • Ads or embeds injected after load pushing content down
  • Bloated JS bundles from drag-and-drop page builders
§ 5.404 / 14

Security, HTTPS & Status Codes

Is the site served securely, consistently, and without silent errors?

Checks
  • SSL valid, covers all subdomains, not about to expire
  • All HTTP → HTTPS via 301
  • No mixed content warnings
  • HSTS enabled (Strict-Transport-Security header)
  • Content-Security-Policy header present and sensible
  • No 5xx errors in status-code crawl
  • No accidental X-Robots-Tag: noindex in production headers
  • Security headers graded A or A+ at securityheaders.com
  • WAF / bot rules don’t block legitimate AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended)
§ 5.505 / 14

On-Page Technical & Semantic HTML

Does every page’s markup clearly communicate what it is and what it’s about?

Checks
  • Title tag: unique, 50–60 chars, primary keyword near front
  • Meta description: unique, 140–160 chars, CTA intent included
  • Exactly one H1 per page, describes the page topic
  • H2–H6: logical hierarchy, no skipped levels
  • Semantic HTML5 used correctly — article, section, nav, main, aside, header, footer
  • Descriptive alt attributes on all non-decorative images
  • lang attribute set on
  • Open Graph + Twitter Card complete on shareable pages
  • hreflang (if multi-locale): reciprocal, self-referencing, valid codes
  • Canonical: self-referencing on indexable pages
Red flags
  • div-soup styled to look like headings — invisible to screen readers and LLM parsers (the most common failure on modern React/Vue sites)
§ 5.606 / 14

Structured Data & AI-Readiness

Can LLMs, answer engines, and rich-result pipelines parse our site into structured facts they can cite correctly?

Checks
  • Homepage: Organization + WebSite (with SearchAction)
  • Articles: Article / BlogPosting + Author (Person) + BreadcrumbList
  • Products: Product + Offer + AggregateRating + Review
  • Services: Service + Organization
  • FAQs (real ones only): FAQPage
  • HTML fully rendered server-side or statically generated
  • llms.txt published at root
  • robots.txt explicitly allows GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot (unless strategically blocked)
  • WAF rules don’t shadowban the above
  • Structured data validates cleanly in Google Rich Results Test + Schema.org validator
  • Entity consistency: org name, founding date, founders, product names match across schema + copy
  • Key facts in answer-ready formats — definitions near the top, short paragraphs, H2 questions
  • Monthly citation spot-check across Perplexity, ChatGPT, Claude, Gemini
§ 5.707 / 14

Mobile & Responsive

Does the mobile experience match or exceed desktop, since Google indexes mobile-first?

Checks
  • Viewport meta tag present and correct
  • Tap targets ≥ 48×48px with adequate spacing
  • Text legible without zoom (≥ 16px body)
  • No horizontal scroll on any viewport ≥ 320px
  • Mobile serves identical content to desktop — no truncated articles, no hidden sections
  • Forms work on mobile keyboards (inputmode, autocomplete attrs)
  • Mobile CWV within range of desktop
  • Tested on real devices, not just Chrome DevTools
§ 5.808 / 14

Accessibility (WCAG 2.2 AA)

Can users with disabilities accomplish everything sighted/hearing/mouse users can?

Checks
  • Perceivable: alt text, captions, contrast ≥ 4.5:1 body / 3:1 large, text resize to 200% without loss
  • Operable: keyboard navigation, visible focus, skip-to-content link, no keyboard traps
  • Understandable: consistent navigation, clear errors, form labels correctly associated
  • Robust: valid HTML, ARIA used correctly and sparingly, works across assistive tech
  • Automated scan (axe, WAVE, Lighthouse) + manual keyboard and screen-reader testing
Red flags
  • Relying only on automated tools — they catch ~40% of issues. Manual keyboard + screen-reader testing is non-negotiable.
§ 5.909 / 14

Content Audit by Type

Different content types fail differently. Auditing them with the same rubric is malpractice.

Checks
  • 13 content-type rubrics applied per URL (homepage, pillar, cluster, case study, service, product, pricing, blog index, landing, docs, about, contact, legal)
  • Per-type structured data audited
  • Per-type quality signals scored (E-E-A-T, last-updated, author bylines)
  • Inventory of which type each URL is — many sites can’t answer this
§ 5.1010 / 14

UX & Conversion Audit

At every decision point in the funnel, are we reducing friction and reinforcing intent?

Checks
  • Information scent — can users predict what’s behind each link?
  • CTA clarity — one dominant action per page?
  • Form friction — minimum fields, progressive disclosure?
  • Trust signals placed at the right decision points?
  • Error states clear and recoverable?
  • Empty states useful, not dead ends?
  • Loading states visible and honest?
  • Dark patterns absent (third-party reviewer with ethics brief)?
  • Session replay sample (20–50 sessions, mix desktop/mobile)
  • Heatmaps on top 5 conversion pages
§ 5.1111 / 14

Backlink & Off-Page Audit

Who links to us, and do those links help or hurt us?

Checks
  • Total referring domains + DR/DA distribution
  • Top 20 linking domains (manual quality review)
  • Anchor text distribution — over-optimized anchors are a risk signal
  • Toxic / spammy backlinks — disavow only if necessary + manual action exists
  • Link velocity — sudden spikes investigated
  • Brand mentions unlinked — outreach opportunities
  • Competitor backlink gap analysis
§ 5.1212 / 14

Analytics, Event & Observability

Can we see what’s happening, attribute it to a source, and detect when something breaks?

Checks
  • GA4 (or alt) installed on 100% of pages — verified via crawl
  • Event schema documented (20–40 named events, typed properties, no PII)
  • Key conversion events tested via DebugView
  • Attribution model agreed and stored with every lead
  • UTM parameters captured and persisted into CRM + analytics
  • Uptime monitoring with 99.9% SLO minimum
  • Client-side JS error monitoring (Sentry or equivalent)
  • Form submission success rate monitored with daily threshold alert
  • Core Web Vitals tracked over time (RUM or PageSpeed API cron)
  • Privacy / consent compliance — banner, DPA, PII handling
Red flags
  • If a lead form silently fails for 48 hours, how do you find out? If the answer is ‘a salesperson notices the drought,’ fix that before anything else.
§ 5.1313 / 14

Competitive & Content Gap

Where are competitors winning that we’re not, and is it worth catching up?

Checks
  • Top 3–5 competitors identified (business-defined, not tool-defined)
  • Their top-100 organic keywords vs yours (gap report)
  • Their content velocity (posts / month)
  • Their backlink sources you don’t share
  • Their schema coverage vs yours
  • Their AI citation presence (same brand-query spot check)
  • Topic clusters they own that you don’t
  • Their site speed + UX benchmarks vs yours
§ 5.1414 / 14

Log File Analysis

What are crawlers actually doing, not what we hope they’re doing?

Checks
  • Googlebot hit volume per day (trend)
  • Top 20 most-crawled URLs — should be the most valuable
  • URLs crawled repeatedly that return errors
  • URLs never crawled that should be
  • Crawl budget wasted on parameter URLs, filters, infinite paginations
  • Bot distribution: Googlebot vs Bingbot vs AI crawlers (GPTBot, ClaudeBot, PerplexityBot)
  • Unusual user agents flagged for investigation
Red flags
  • Most mid-market sites skip this. Every enterprise site must do it.
Want this scored against your site?

Send the URL — we’ll run the framework and come back with a ranked, shippable backlog.

Book your audit →