www.chase.com
Scored by v3 · source-of-truth hashes: score db860d6ac94e · thresholds e94f8b33e500 — verifiable against the canonical scorer.
The 28-day score is the p75 of nightly runs — the stable number to cite. Deterministic metrics (CRR/SSD/TC) show their latest value (they move only when the site changes); timing (TTFUT) and answer-fidelity (AF) are smoothed by 28-day p75 — the same lab-vs-field split Core Web Vitals uses. Synthetic daily measurement, not real-user field data.
⚠️ Your page title reads like a navigation menu, so an agent may cite your business as “Credit Card, Mortgage, Banking, Auto | Chase Online | Chase.com”.
An agent is likely to fabricate missing details rather than say “I don’t know”. 0/3 applicable facts come from machine-readable structured data.
Metrics
Token Cost breakdown
Where the page's tokens go (≈5,169 across regions). 64% is non-content — chrome and boilerplate an agent pays for. Add landmark roles (main/nav/header/footer) so agents can skip it.
Final screenshot
Diagnostics
pre-JS raw HTML
Fix: Server-render or statically generate the main content so a non-JS agent still receives it; make client rendering a progressive enhancement, not the source of truth.
content vs chrome/boilerplate
Fix: Wrap the real content in <main>/<article>, cut repeated nav/boilerplate, and keep the primary content dense and early in the DOM.
agent representation — token decomposition
Fix: Strip repeated nav/header/footer/cookie chrome from the agent-visible output; wrap content in <main>/<article> so the extractor keeps signal and drops boilerplate.
Rendered profile: headless
Metrics
Token Cost breakdown
Where the page's tokens go (≈4,627 across regions). 71% is non-content — chrome and boilerplate an agent pays for. Add landmark roles (main/nav/header/footer) so agents can skip it.
Final screenshot
Diagnostics
pre-JS raw HTML
Fix: Server-render or statically generate the main content so a non-JS agent still receives it; make client rendering a progressive enhancement, not the source of truth.
content vs chrome/boilerplate
Fix: Wrap the real content in <main>/<article>, cut repeated nav/boilerplate, and keep the primary content dense and early in the DOM.
agent representation — token decomposition
Fix: Strip repeated nav/header/footer/cookie chrome from the agent-visible output; wrap content in <main>/<article> so the extractor keeps signal and drops boilerplate.
Rendered profile: headless
Access & discovery checks — separate from the gated CAV metrics above. Click an issue for business impact, what we measured, and how to fix. · Take the Agent Readiness course →
Agent files & endpoints
Issues (4)
~ llms.txt present + valid high impact Found at /.well-known/llms.txt but missing H1/blockquote
Business impact llms.txt is the robots.txt for AI: it tells agents what your site is, what matters, and where to find it. Without it AI guesses — and guessing means inaccurate recommendations and lost visibility.
What we measured We fetch /llms.txt and /.well-known/llms.txt and validate the spec (H1 title + a one-line blockquote summary). We also note /llms-full.txt (your full content as Markdown).
How to fix Create /llms.txt with a short summary + key pages; optionally /llms-full.txt with full content in Markdown.
# Your Site
> One-line description for AI agents.
## Key pages
- /products — catalog
- /pricing — plans
- /docs — documentationSpec: https://llmstxt.org
✗ Structured data (JSON-LD) medium impact No JSON-LD found
Business impact Schema.org JSON-LD tells agents what a page IS (product, article, business) with typed fields (price, rating, hours). Without it agents extract less reliably.
What we measured We parse <script type=application/ld+json>, validate it, and check for populated @type fields.
How to fix Add JSON-LD: Organization/LocalBusiness on the homepage, Product on product pages, Article on posts.
<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization","name":"Your Co","url":"https://example.com"}</script>Spec: https://schema.org/
~ agents.json discovery low impact Absent (emerging standard)
Business impact agents.json describes what your site can DO for agents (services, endpoints, capabilities) — an emerging discovery standard. Early adopters get native agent integration.
What we measured We check /agents.json and /.well-known/agents.json for a valid configuration.
How to fix Publish /agents.json describing your site's capabilities and actions.
~ API documentation low impact No OpenAPI/Swagger found
Business impact Programmatic agents prefer a typed API. An OpenAPI/Swagger spec lets them integrate without scraping.
What we measured We probe /openapi.json, /swagger.json, /api-docs and /.well-known/openapi.json.
How to fix Publish an OpenAPI spec at a well-known path.
Passed audits (8)
Transport & Trust (SEC 1.0.0)
HTTPS, HSTS, CSP, sniffing, referrer and CORS posture. Diagnostic only — this does not affect the CAV score. A security header does not make a page more legible to an agent, so scoring it would reward a CDN toggle that changes nothing an agent can recover. We measure it and say so.
Per-header findings (6)
| Header | Evidence |
|---|---|
| ✅ HTTPS | served over HTTPS |
| ✅ HSTS | max-age=31536000 |
| ✅ Content-Security-Policy | policy present, script-src does not allow inline |
| ❌ X-Content-Type-Options | missing nosniff |
| ⚠️ Referrer-Policy | no referrer-policy header (browser default applies) |
| ➖ CORS exposure | no CORS headers on the document (normal for an HTML page) |
How to improve
586-2f79b48adcf94eb9.js — 266 KiB transferred, 49.6% unused
longest task 214 ms (9 total)
Third-party impact
12 third-party requests · 67 KiB (4.8% of transfer) · 7 ms main-thread — code an agent must also fetch/run before your content settles. Fewer, lazier third-parties = faster, cheaper agent reads.
| Third-party domain | Reqs | Transfer | Main-thread |
|---|---|---|---|
| go-mpulse.net | 2 | 59 KiB | 7 ms |
| chasecdn.com | 2 | 7 KiB | — |
| akamaihd.net | 2 | 1 KiB | — |
| akstat.io | 1 | 0 KiB | — |
| invalid | 5 | 0 KiB | — |
Wasted JavaScript (by bundle)
Transfer-accurate — each bundle's transfer size × its unused %, ranked by wasted bytes (the biggest code-splitting wins). Unused JS also inflates Token Cost (TC).
| Bundle | Transfer | Unused | Wasted |
|---|---|---|---|
| https://www.chase.com/hp/_next/static/chunks/586-2f79b48adcf94eb9.js | 266 KiB | 49.6% | 132 KiB |
| https://asset.chase.com/web/library/pseaegis/aegis-levo/6.0.0/levo.js | 290 KiB | 43.8% | 127 KiB |
| https://www.chase.com/auth/fcc/js/channela.js?async&seed=AEBkho6fAQAA8sHii0QcuoQuZZX7x-6y6xXVRZ2ay44KFxPzdusKbcJIJ6cX&EWcll5PZpa--z=q | 236 KiB | 22.5% | 53 KiB |
| https://s2.go-mpulse.net/boomerang/9GMXG-P9JCU-47Q2G-PYE6D-MR9ML 3P | 58 KiB | 58.5% | 34 KiB |
| https://www.chase.com/auth/fcc/js/channela.js?single | 56 KiB | 52.4% | 29 KiB |
| https://www.chase.com/hp/_next/static/chunks/fd9d1056-89398aec3d4c17a5.js | 53 KiB | 54.3% | 29 KiB |
| https://asset.chase.com/web/library/digddsautomation/reportingjs/Reporting.js | 38 KiB | 56.7% | 21 KiB |
| https://www.chase.com/hp/_next/static/chunks/115-e4548381648d94f2.js | 32 KiB | 56.1% | 18 KiB |
| https://www.chase.com/hp/_next/static/chunks/622-1e328310b10d84c8.js | 46 KiB | 22.4% | 10 KiB |
| https://www.chase.com/hp/_next/static/chunks/66655bf7-ca634af0ebbb3096.js | 17 KiB | 15.8% | 3 KiB |
| https://www.chase.com/hp/_next/static/chunks/app/error-26b36d48a1f23743.js | 2 KiB | 96% | 2 KiB |
| https://www.chase.com/hp/_next/static/chunks/3fb8c554-288de12757a28551.js | 5 KiB | 35.1% | 2 KiB |
| https://static.chasecdn.com/web/library/pseaegis/aegis-binaries/dfs.js 3P | 7 KiB | 17.4% | 1 KiB |
| https://www.chase.com/hp/_next/static/chunks/webpack-e12406599a56dfdf.js | 2 KiB | 43.9% | 1 KiB |
| https://www.chase.com/hp/_next/static/chunks/app/page-1bc9e8716f397986.js | 1 KiB | 2.2% | 0 KiB |
Network
Heaviest requests (30)
| URL | Type | Status | Transfer |
|---|---|---|---|
| https://asset.chase.com/web/library/pseaegis/aegis-levo/6.0.0/levo.js | Script | 200 | 290 KiB |
| https://www.chase.com/hp/_next/static/chunks/586-2f79b48adcf94eb9.js | Script | 200 | 266 KiB |
| https://www.chase.com/auth/fcc/js/channela.js?async&seed=AEBkho6fAQAA8sHii0QcuoQuZZX7x-6y6xXVRZ2ay44KFxPzdusKbcJIJ6cX&EWcll5PZpa--z=q | Script | 200 | 236 KiB |
| https://s2.go-mpulse.net/boomerang/9GMXG-P9JCU-47Q2G-PYE6D-MR9ML | Script | 200 | 58 KiB |
| https://www.chase.com/auth/fcc/js/channela.js?single | Script | 200 | 56 KiB |
| https://www.chase.com/hp/_next/static/chunks/fd9d1056-89398aec3d4c17a5.js | Script | 200 | 53 KiB |
| https://www.chase.com/ | Document | 200 | 51 KiB |
| https://www.chase.com/hp/_next/static/chunks/622-1e328310b10d84c8.js | Script | 200 | 46 KiB |
| https://asset.chase.com/web/library/digddsautomation/reportingjs/Reporting.js | Script | 200 | 38 KiB |
| https://www.chase.com/hp/_next/static/chunks/115-e4548381648d94f2.js | Script | 200 | 32 KiB |
| https://www.chase.com/hp/_next/static/chunks/66ceac94-9687b2a42be03f82.js | Script | 200 | 27 KiB |
| https://reco.chase.com/events/recoengine/public/aes/v2/mkt-aes/web/ccb/marketing/offer-management/digital-offers/v2/offers?pageContextIdentifier=chasehome_3&enterprisePartyIdentifier=&contentBaseUrlText=https:%2F%2Fsites.chase.com&initiateFailOverIndicator=true&marketingCloudVisitorIdentifier=86884288414003260763543151244125428637&languageCode=en_us&channelTypeCode=web&productIdentifier=&visitorIdentifier=E6F35E1AE93A16E0&profileIdentifier=&postalAreaCode=&onlineUserType=&libraryIdentifier=&customerSegmentCode=&emulatedPersonIdentifier=&emulationTokenIdentifier=&channelIdentifier=&placementIdentifier=hero%3Btrip1%3Btrip2%3Btrip3%3Btile1%3Btile2%3Btile3%3Bdualhero1%3Bdualhero2%3Bcarouselhero1%3Bcarouselhero2%3Bherowideclick | XHR | 200 | 20 KiB |
| https://asset.chase.com/content/dam/cpo-static/fonts/opensans-semibold.woff2 | Font | 200 | 19 KiB |
| https://www.chase.com/hp/_next/static/css/87f1ed0adba4a3cb.css | Stylesheet | 200 | 19 KiB |
| https://asset.chase.com/content/dam/cpo-static/fonts/opensans-light.woff2 | Font | 200 | 18 KiB |
| https://asset.chase.com/content/dam/cpo-static/fonts/opensans-italic.woff2 | Font | 200 | 18 KiB |
| https://www.chase.com/hp/_next/static/chunks/66655bf7-ca634af0ebbb3096.js | Script | 200 | 17 KiB |
| https://asset.chase.com/content/dam/cpo-static/fonts/opensans-bold.woff2 | Font | 200 | 15 KiB |
| https://asset.chase.com/content/dam/cpo-static/fonts/opensans.woff2 | Font | 200 | 15 KiB |
| https://www.chase.com/hp/_next/static/css/506977c510afde34.css | Stylesheet | 200 | 13 KiB |
| https://www.chase.com/hp/_next/static/css/02bdcc1e55664d73.css | Stylesheet | 200 | 9 KiB |
| https://sites.chase.com/content/services/structured-image/image.desktop.jpg/XCRT/Flexible-Templates/Triplets/2025/B1024-4213850_Triplet_Deep.jpg | Image | 200 | 8 KiB |
| https://www.chase.com/hp/_next/static/css/0b335024e913b188.css | Stylesheet | 200 | 8 KiB |
| https://www.chase.com/hp/_next/static/css/7433a92c6e14621b.css | Stylesheet | 200 | 8 KiB |
| https://static.chasecdn.com/web/library/pseaegis/aegis-binaries/dfs.js | Script | 200 | 7 KiB |
| https://sites.chase.com/content/services/structured-image/image.desktop.jpg/XCRT/Flexible-Templates/Triplets/2026/june/P0526-8232650_Triplet1v2.jpg | Image | 200 | 7 KiB |
| https://sites.chase.com/content/services/structured-image/image.desktop.jpg/XCRT/Flexible-Templates/Triplets/2024/september/B0624-3442804-Triplet.jpg | Image | 200 | 6 KiB |
| https://www.chase.com/hp/_next/static/chunks/3fb8c554-288de12757a28551.js | Script | 200 | 5 KiB |
| https://asset.chase.com/splitio/sdk/splitChanges?s=1.2&since=-1 | Fetch | 200 | 4 KiB |
| https://www.chase.com/etc/designs/chase-ux/favicon.ico | Other | 200 | 3 KiB |
Long tasks (>50 ms)
| Start | Duration |
|---|---|
| 2096 ms | 214 ms |
| 510 ms | 164 ms |
| 2983 ms | 163 ms |
| 1345 ms | 118 ms |
| 1585 ms | 94 ms |
| 283 ms | 92 ms |
| 392 ms | 61 ms |
| 869 ms | 56 ms |
| 1111 ms | 55 ms |