Kernel InitKernel Trustfree · beta · v3

What can anyone do with your business today?

Enter your domain. We look at what is public: who can send email as you, what outside code runs on your homepage and what it can see, your headers, the DNS records attackers check first, how AI assistants can read you and which lookalike domains can send email. For shops, a separate store-readiness verdict shows whether your policies, contact details and product data look like a real business. Then we tell you exactly what to change. No install, no login, nothing stored.

What we check

Five scored modules, plus a store-readiness verdict.

Everything runs from the outside, the way anyone on the internet could look. No access to your accounts, and nothing that probes private paths.

01 · Email identity · 30%

Can strangers email as you?

SPF followed recursively with a real DNS-lookup count, dangling includes and void lookups; DMARC policy, alignment and whether external report addresses authorized you; DKIM across common selectors and provider CNAMEs; MX provider advice, MTA-STS (policy fetched and matched to MX), TLS-RPT and BIMI.

02 · Web & headers · 20%

What does the browser enforce?

HTTPS and the http→https redirect, HSTS, Content-Security-Policy, framing, nosniff, Referrer-Policy, Permissions-Policy, cookie flags, mixed content and security.txt. Fixes come as snippets for your platform or host (Shopify, WordPress, Cloudflare, Vercel, Netlify, nginx and more).

03 · Third-party scripts · 20%

Who runs code on your homepage, and what can it see?

Scripts, iframes and pixels matched against a catalog of 233 vendor hosts with categories and a plain note on what each can see. Flags session-recording tools, public-CDN code without integrity checks, tag loaders that add more code later and Shopify's legacy ScriptTags, which stop loading on 1 March 2027.

04 · DNS & subdomains · 15%

What do attackers check first?

Dangling CNAMEs and takeover candidates on 11 common subdomains (www, mail, shop, blog, app, docs, status, help, support, cdn, assets), CAA (which certificate authorities may issue for you) and DNSSEC.

05 · AI visibility & impersonation · 15%

How do assistants and impostors see you?

Your robots.txt rule for 15 AI crawlers with the tradeoff of each (not scored either way), llms.txt, Organization JSON-LD and sameAs, canonical and Open Graph tags, an “if an AI assistant described your business” checklist, and 26 lookalike domains checked for a website and mail servers.

06 · Store readiness · separate verdict

Does your shop look legitimate to a reviewer?

A red/yellow/green self-check of what a payment processor or Merchant Center reviewer looks for first: refund, shipping, privacy and terms pages (with a thin-page check under 300 characters), a contact page with a real email, phone or address, a contact email on your own domain, legal name and address, an about page, one brand name across title, Open Graph and JSON-LD, Organization schema with contactPoint, valid sameAs, Product price, availability and GTIN, plus payment, review and badge hints and “too good to be true” signals. Homepage plus a fixed list of public paths, at most 15 requests. It doesn’t change the score, and it isn’t what any processor actually runs.

07 · Consent Proof · Phase 2

Does your cookie banner really wait?

Not live. It will load your site in a real browser and record which trackers fire before anyone clicks Accept. It is not part of the score today.

Join the waitlist

Share it. Every result has a link (/trust/?d=yourshop.com) with its own preview card, a downloadable PNG, Markdown and JSON exports, and a README badge at /trust/badge/yourshop.com.svg. Compare two domains side by side.

Methodology · how the score works

Five module scores, one weighted average. Store readiness stands apart.

Each module starts at 100 and every finding costs fixed points on that module's scale. The overall score is the weighted average of the modules that ran. No hidden weights and no comparison with other businesses. Checks we couldn't run cost nothing and are listed as “not checked”.

Module weights
ModuleWeightRules
Email identity30%16
Web & headers20%13
Third-party scripts20%5
DNS & subdomains15%4
AI-era visibility & impersonation15%7
Store readinessSeparate R/Y/G verdict (0%)22
  1. Each module starts at 100 and loses the points of every finding in it, never below 0.
  2. Overall = the weighted average of the modules that ran. A module that couldn’t run is left out, never counted as 0.
  3. Severity follows points on the module scale: high 20+, medium 8–19, low 1–7.
  4. Fix first = the three findings whose fix raises the overall score most, worked out by rescoring without each one.
  5. Store readiness is scored on its own: each check is green, yellow or red (hints and checks we can’t run don’t count). Any red check (for example no refund policy or no way to contact you) makes the verdict Red, any yellow check Yellow, otherwise Green. Its 0–100 readiness number is 100 minus the store rules below. It never changes the overall score.
Kernel Trust scoring rubric, version 3.0.0
FindingModuleSeverityPoints
No DMARC recordEmail identityHigh−50
DMARC policy is p=none (monitor only)Email identityHigh−40
SPF ends in +all (any server may send)Email identityHigh−40
No SPF recordEmail identityMedium−18
More than one SPF record (SPF fails for everyone)Email identityMedium−18
SPF includes a domain with no SPF record (SPF errors)Email identityMedium−15
SPF needs more than 10 DNS lookups (SPF errors)Email identityMedium−15
SPF ends in ?all or has no 'all'Email identityMedium−12
Subdomains exempt (sp=none)Email identityMedium−8
DMARC enforces on less than 100% of mail (pct)Email identityLow−6
Your mailbox provider isn't in your SPF recordEmail identityLow−6
DMARC sends no aggregate reports (no rua)Email identityLow−5
SPF has more than 2 lookups that return nothingEmail identityLow−5
No DKIM key among the selectors we probeEmail identityLow−5
External DMARC report address hasn't authorized your reportsEmail identityLow−4
MTA-STS announced but the policy is missing, invalid or doesn't match your MXEmail identityLow−3
Homepage not reachable over HTTPSWeb & headersHigh−40
http:// does not redirect to https://Web & headersMedium−15
No HSTS headerWeb & headersMedium−12
No Content-Security-PolicyWeb & headersMedium−12
Page can be framed by any site (clickjacking)Web & headersMedium−10
HTTPS page references http:// scripts, styles or framesWeb & headersLow−6
No X-Content-Type-Options: nosniffWeb & headersLow−5
HSTS max-age under 6 monthsWeb & headersLow−4
No /.well-known/security.txt (nowhere to report a problem)Web & headersLow−3
security.txt has expired or has no Expires/ContactWeb & headersLow−3
No Referrer-PolicyWeb & headersLow−2
No Permissions-PolicyWeb & headersLow−2
Session-replay tool can record what visitors typeThird-party scriptsMedium−15
Shopify apps load via legacy ScriptTags (stop 2027-03-01)Third-party scriptsMedium−15
More than 15 third-party hosts run code on the homepageThird-party scriptsLow−7
Public-CDN library loaded without SRIThird-party scriptsLow−6
Script hosts not in our catalogThird-party scriptsLow−4
Subdomain points at an unclaimed third-party service (takeover candidate)DNS & subdomainsHigh−45
Subdomain CNAME points at a name that doesn't existDNS & subdomainsMedium−15
No CAA record (any certificate authority may issue for you)DNS & subdomainsLow−5
DNSSEC not enabledDNS & subdomainsLow−5
Lookalike domains registered with mail servers (email-capable)AI-era visibility & impersonationMedium−15
robots.txt blocks all crawlers from the whole siteAI-era visibility & impersonationMedium−10
Lookalike domains registered and resolving (not proof of intent)AI-era visibility & impersonationLow−7
No Organization / brand structured data (JSON-LD)AI-era visibility & impersonationLow−6
Canonical or og:url points to a different siteAI-era visibility & impersonationLow−5
No Open Graph title/image (bad link previews)AI-era visibility & impersonationLow−4
Structured data doesn't link your official profiles (sameAs)AI-era visibility & impersonationLow−3
Storefront homepage not served over HTTPSStore readinessHigh−40
No refund / return policy foundStore readinessHigh−30
No contact page or contact detailsStore readinessHigh−30
Only free-mail contact address (Gmail, Hotmail, …)Store readinessHigh−25
No shipping policy foundStore readinessHigh−20
No privacy policy foundStore readinessHigh−20
No legal business name or address on the siteStore readinessMedium−15
Policy still contains template placeholder textStore readinessMedium−15
Contact details thin (fewer than two of email, phone, address)Store readinessMedium−10
Policy page under 300 characters of textStore readinessMedium−10
Social links point at the theme or platform's own profilesStore readinessMedium−10
No terms of service foundStore readinessMedium−8
No about pageStore readinessMedium−8
"Too good to be true" claims (70%+ off, miracle/guaranteed results)Store readinessMedium−8
No Organization JSON-LD on the homepageStore readinessLow−6
Product JSON-LD missing price, availability, GTIN/MPN, brand or imageStore readinessLow−6
Legal name or business address missing (one of the two)Store readinessLow−5
Contact email not on the shop's own domainStore readinessLow−5
Brand name differs across title, og:site_name and JSON-LDStore readinessLow−5
Organization JSON-LD without contactPointStore readinessLow−4
sameAs profile URLs invalid or placeholdersStore readinessLow−4
Generic "guaranteed safe checkout" style badge textStore readinessLow−3

Bands: Strong 85+ · Fair 65+ · Weak 40+ · Exposed below 40. Rubric version 3.0.0 (2026-11-02); the scanner and this page read the same file (src/worker/rubric.json), so the table can’t drift from the code.

Changelog

  1. v3.0.0 · 2026-11-02

    • New Store readiness module: a red/yellow/green self-check of how a payment processor or Merchant Center reviewer might see a shop (refund, shipping, privacy and terms policies; contact page and details; contact email domain; legal name and address; about page; brand consistency; Organization and Product JSON-LD; sameAs; payment, review and badge hints; "too good to be true" signals).
    • Runs as a fifth parallel scan part that reads the homepage plus a fixed list of public policy/contact/about paths (at most 15 requests, no crawling).
    • Reported as its own verdict with its own 0–100 readiness score and rules (module "store" below); weight 0, so the overall Trust score, badge and share image are unchanged.
    • Domain age isn't checked (no WHOIS/RDAP), and the verdict is a heuristic, not what any processor actually uses.
  2. v2.0.0 · 2026-11-02

    • Per-module sub-scores with weights; overall is the weighted average of modules that ran.
    • New modules: DNS & subdomains (dangling CNAME / takeover candidates, CAA, DNSSEC) and AI-era visibility & impersonation (robots per AI bot, llms.txt, JSON-LD, lookalikes with MX).
    • SPF is followed recursively with real lookups; dangling includes and void lookups are flagged.
    • DMARC alignment and external report authorization; MTA-STS policy fetched and checked against MX.
    • Points are now on a per-module scale; severity is derived from points.
    • Fix first: the three findings whose fix raises the overall score most, with copy-paste snippets.
  3. v2026-11-02 · 2026-11-02

    • First public version: a single 100-point score across identity, transport, scripts and impostors.

FAQ

Questions people ask before they scan.

Is this a security audit or a certificate?

No. It is a passive, external check of public DNS records and your public homepage at one moment. It is not a penetration test, an audit or a compliance certificate, and a good score doesn't mean a site can't be attacked.

What do you request from my site?

One homepage request over HTTPS (plus redirects), one plain-http request to see whether it redirects, and three small public files: /robots.txt, /llms.txt and /.well-known/security.txt. If you publish MTA-STS we fetch that policy file, and we load the front page of a few common subdomains whose CNAME points at a hosting provider. Everything else is public DNS over HTTPS. The store-readiness check also opens up to 15 fixed public paths (policy, contact, about and terms pages). We never try private paths such as /.git or /.env, and we never log in.

Do you store my results?

No. Results are kept in memory for up to 10 minutes so a shared link or badge loads quickly, then they are gone. There is no database, no list of recent scans, no cookies and no analytics scripts. To rate-limit scans, your network's IP address is kept in memory for up to an hour, never written to storage by us. Cloudflare, which hosts the site, may show us aggregate request counts in its own dashboard.

Why is my score different from another scanner's?

Every scanner weighs things differently. Ours is the weighted average of five module scores, using the public rubric on this page. Each finding shows what we saw and the rule it matched, so you can check our reasoning.

A lookalike domain is flagged. Is someone attacking me?

Not necessarily. A registered lookalike with mail servers can send and receive email, which is why we show it, but you, a reseller or a domain parker may own it. Check who owns it before acting.

Should I block AI crawlers?

It's a tradeoff, and we don't score it. Blocking a training crawler keeps future crawls out of that company's training data; blocking an assistant or search crawler can also keep you out of its answers. The result lists each crawler, what your robots.txt says and what changing it would do.

Is the store-readiness verdict what Stripe, Shopify or Google use?

No. It is our own self-check heuristic built from public pages: your policies, contact details, business identity and product data, read the way a reviewer might read them. Payment processors and Google Merchant Center use their own private signals, your account details and documents, and transaction history, none of which we can see. A Green verdict doesn't guarantee approval and a Red one doesn't mean you'll be suspended. Domain age isn't checked.

Which pages does the store check open?

The homepage you already gave us, then a fixed list of public paths on the same site: policy pages such as /policies/refund-policy or /refund-policy, contact, about and terms pages, at most 15 requests in parallel. No crawling, no product pages, no checkout, no forms, and nothing behind a login.

Can I scan a competitor?

Yes. Everything we read is public, and the compare page shows two domains side by side. Please be fair with the result: a score says which public setup has fewer of the issues we check, not which business is safer.

What we don't do

A quick look from outside. Not an audit.

  • No storage

    Results live in memory for up to 10 minutes so a shared link or badge loads fast, then they are gone. No database, no recent-scans list, no cookies, no analytics scripts. Our host, Cloudflare, may show us aggregate request counts.

  • Light touch

    A handful of public web requests (up to 15 more for the store check), identified as KernelTrust/2.0; everything else is public DNS. We never request private paths. Scans are rate limited per network.

  • Honest limits

    We read the homepage HTML without running it, so scripts added later by other scripts may be missing. DKIM is a probe, not proof. It can't tell whether anything was ever breached, and it doesn't measure any law or standard. Each result ends with the full list of what we don't check yet.

Status: beta. A scan runs as five parallel parts (email, DNS, web, lookalikes, store readiness); if one part times out, the others still score and the result says which part didn't finish. Automated external checks, not legal or security advice. A result reflects public DNS and your homepage at the moment of the scan.

Deep audit · Posture

Want the full picture? That's Posture.

Kernel Trust is the free first look. Posture is the deep-audit module: every page type, TLS and DNS in depth, benchmarks against similar stores and fixes in priority order.