SYSONLINE
UTC2026-04-21 03:56:25Z
SCAN2026-04-20
VER0.4.0
FEEDSFLEET15hSEO10hGSC3d lagGA41d lagAHREFSweeklyDFSlive
VIEWSYS · METHODOLOGY
29 // SCORING RUBRICV2.0
Methodology
Apex Sentinel Scoring v2.0 is rubric-based and grounded in published industry standards. Every category uses deterministic signals from sources we actually collect (no invented numbers). Where a signal isn't yet available, we say so explicitly — null is preferred over fake data. Weights come from cited industry benchmarks (Google documentation, Lighthouse scoring, AWR CTR study, Whitespark LSRF, Google Quality Rater Guidelines).
Core principles:- No arbitrary weights — every weight traces to a cited source or is explicitly "emerging".
null beats fake data. Missing signal = "—", not zero.- Field data preferred over lab data (RUM > Lighthouse).
- Threshold-based where industry has thresholds (CrUX buckets for CWV).
- Public methodology — this page is the single source of truth, editable in git.
Technical
Server errors, SSL/TLS, broken links, redirect chains, robots.txt, sitemap, canonical tags. Penalty-based: start at 100, deduct per Sentinel finding from the last 7 days (P0=−25, P1=−10, P2=−3). Aligned with Google's Technical SEO fundamentals and Lighthouse SEO score thresholds (90+ = good).
Weight breakdown
| HTTP 5xx rate | 25% |
| SSL/TLS grade (Qualys SSL Labs) | 15% |
| Broken internal links | 15% |
| robots.txt validity | 10% |
| Sitemap validity + freshness | 10% |
| Canonical tag presence | 10% |
| Redirect chain depth | 10% |
| Mixed content | 5% |
Data sources (in use)
- Sentinel crawler tiers 1 + 2 + 5
- SSL Labs Qualys grade
- Google Technical SEO guidelines
Content
Content quality proxied via real search engagement + first-party editorial hygiene. CTR-vs-expected uses AWR's 2024 CTR-by-position benchmarks (position 1 ≈ 31.7%, position 5 ≈ 9.5%). Editorial QA and content depth are measured by Sentinel's own crawler (title/meta/H1 presence + in-range %, median word count).
Weight breakdown
| CTR / expected-CTR ratio (AWR 2024) | 30% |
| Editorial QA (first-party title/meta/H1 in-range %) | 25% |
| Query coverage breadth (queries ranking top 20) | 15% |
| Impression growth 7d-vs-prior-7d | 15% |
| Content depth (median word count) | 15% |
Data sources (in use)
- Google Search Console
- Sentinel site-crawl (first-party HTML parse)
- AWR 2024 CTR-by-position benchmarks
Pending additions
- Topic coverage / entity breadth (NLP)
- Readability grade (Flesch-Kincaid)
Authority
GSC-derived authority proxy pending Ahrefs API access. Strong correlations: low avg position across niche queries, many top-3 + top-10 rankings, and high organic click volume. Will blend in Ahrefs Domain Rating + referring domains when available.
Weight breakdown
| Average rank position (lower = stronger authority) | 30% |
| # of queries ranking in top 3 | 25% |
| # of queries ranking in top 10 | 25% |
| Total organic clicks (28d) | 20% |
Data sources (in use)
- GSC queries history (28d)
Pending additions
- Ahrefs Domain Rating
- Moz Domain Authority
- Referring-domain profile + spam score
UX / Performance
Google's Core Web Vitals — the perf metrics Google uses for ranking. Field data (RUM pixel) preferred; falls back to Lighthouse lab below 100 samples. Thresholds are Google's own CrUX buckets: LCP <2500ms, CLS <0.1, INP <200ms = 'good' (score 100). Poor = 20.
Weight breakdown
| LCP (Largest Contentful Paint) p75 | 40% |
| CLS (Cumulative Layout Shift) p75 | 30% |
| INP (Interaction to Next Paint) p75 | 30% |
Data sources (in use)
- Apex Sentinel RUM pixel (field)
- Lighthouse lab (fallback)
Pending additions
- Google CrUX API for fleet-wide p75 benchmark comparison
Local SEO
Local-intent discoverability. Whitespark Local Search Ranking Factors methodology. Measures LocalBusiness / CannabisDispensary schema (first-party crawl), license display, and GSC performance on local-intent queries (queries containing 'near me', 'dispensary', or ' in '). NAP consistency proxy via schema + license alignment.
Weight breakdown
| LocalBusiness / CannabisDispensary JSON-LD coverage (first-party crawl) | 30% |
| Local-intent query avg rank (GSC) | 30% |
| License displayed (compliance rule) | 20% |
| NAP consistency proxy | 20% |
Data sources (in use)
- Sentinel site-crawl (JSON-LD extraction)
- Sentinel compliance scanner
- GSC local-query analysis
Pending additions
- Google Business Profile API
- Local pack position tracker
- Citation audit (BrightLocal / Whitespark)
On-Page
Per-URL HTML + metadata fundamentals, measured first-party by Sentinel's crawler fetching every site URL and parsing the DOM with cheerio. Weighted by Google ranking-impact: title (20-60 char) + H1 discipline + schema + canonical lead. meta_keywords excluded (Google ignores since 2009).
Weight breakdown
| Title in-range (20-60 chars) | 20% |
| Single H1 per page | 15% |
| JSON-LD present | 15% |
| Canonical self-referencing | 12% |
| Meta description in-range (50-160 chars) | 10% |
| Viewport meta | 8% |
| OG tags complete (title+desc+image) | 8% |
| Twitter Card tag | 5% |
| <html lang> attribute | 4% |
| Images with alt text | 3% |
Data sources (in use)
- Sentinel site-crawl (cheerio HTML parse — title/meta/H1/canonical/viewport/og/twitter/lang/img/JSON-LD)
Pending additions
- Internal linking analyzer (anchor text breadth)
Mobile
Mobile-specific experience (Google uses mobile-first indexing). Mobile RUM Core Web Vitals + WCAG 2.2 AA accessibility violations from axe-core. Mobile-LCP threshold is the dominant signal.
Weight breakdown
| Mobile LCP p75 (RUM device=mobile) | 30% |
| Mobile INP p75 | 25% |
| Accessibility violations (WCAG 2.2 AA) | 20% |
| Mobile CLS p75 | 15% |
| Mobile JS errors (RUM) | 10% |
Data sources (in use)
- RUM pixel (device=mobile)
- Sentinel tier9 axe-core a11y audit
- WCAG 2.2 AA ruleset
Pending additions
- Dedicated mobile tap-target audit (WCAG 2.5.5)
AI Readiness
How likely AI search (Perplexity, ChatGPT, Google AI Overview, Claude) is to cite your pages. Emerging discipline — measures first-party JSON-LD breadth, FAQ/QA + Speakable schema presence, and answer-first query ranking. Framework evolves as AEO best practices stabilize in 2025-2026.
Weight breakdown
| Structured data breadth (first-party JSON-LD detection) | 35% |
| Answer-first query rankings (question-form queries in top 10) | 30% |
| FAQ/QAPage schema coverage | 25% |
| Speakable schema coverage | 10% |
Data sources (in use)
- Sentinel site-crawl (JSON-LD @graph walker)
- GSC question-form query analysis
Pending additions
- AI crawler allowlist check (GPTBot, ClaudeBot, PerplexityBot in robots.txt)
- Inbound AI citation tracking (Perplexity / ChatGPT cite monitor)
- Google AI Overview appearance tracker
Schema %
Structured data deployment breadth + type diversity, measured first-party by fetching every page and extracting all <script type="application/ld+json"> blocks (including @graph arrays). Google Rich Results Test API pending — will add validation-pass-rate weighting when wired.
Weight breakdown
| Any JSON-LD present % | 70% |
| Distinct schema.org type diversity (normalized to 5 types) | 30% |
Data sources (in use)
- Sentinel site-crawl (JSON-LD @graph walker — detects LocalBusiness, Organization, Breadcrumb, FAQPage, QAPage, HowTo, Speakable, Article, Product, Person, etc.)
Pending additions
- Google Rich Results Test API
- Schema.org spec validator
E-E-A-T
Google's Quality Rater Guidelines (December 2022 update) — 4 equal-weighted pillars: Experience, Expertise, Authoritativeness, Trustworthiness. Trustworthiness has the richest signal set today (HTTPS, privacy/terms links, license display, contact visibility).
Weight breakdown
| Trustworthiness (compliance passes: HTTPS, privacy, terms, license, age gate) | 30% |
| Authoritativeness (GSC proxy — pending Ahrefs) | 30% |
| Expertise (first-party: author byline 45% · Organization schema 35% · single-H1 20%) | 20% |
| Experience (GA4 bounce rate — low bounce = users finding value) | 20% |
Data sources (in use)
- Sentinel compliance scans (5 trust rules)
- GSC queries (authority proxy)
- Sentinel site-crawl (author byline + Organization JSON-LD + H1 discipline)
- GA4 engagement
Pending additions
- Original-imagery ratio
- Ahrefs inbound authority (DR/DA)
- Topical consistency NLP
- Review aggregate (GBP/TrustPilot)
AEO
Answer-engine / voice / zero-click readiness. First-party JSON-LD detection for FAQPage, QAPage, HowTo and Speakable schema plus GSC query-intent analysis. Emerging discipline — evolves as answer engines mature.
Weight breakdown
| FAQ / QAPage schema coverage (first-party) | 25% |
| Question-form queries ranking top 20 | 25% |
| Schema foundation (any JSON-LD coverage) | 20% |
| Featured-snippet eligibility (position ≤ 1.5) | 15% |
| HowTo schema coverage | 8% |
| Speakable schema coverage | 7% |
Data sources (in use)
- Sentinel site-crawl (FAQPage/QAPage/HowTo/Speakable JSON-LD detection)
- GSC question-form query analysis
Pending additions
- Voice-search query tracker
- PAA (People Also Ask) presence scraper
- Zero-click SERP-feature coverage tracker
Version history: v2.0 (2026-04-19) — hard-swap from v1 composite to rubric-based scoring. v1 used hand-tuned weights with no citations; v2 is sourced to industry standards and transparent at every signal.