60of 100
191msTTFB
69Lighthouse
83LH desktop
12.0sLCP
0.00CLS
gzipCompression
MISSCache
Core Web Vitals & lab metricsD56
2/5 checks passed · 22.4/40 pts Jump to section ↓
Server response & cachingD62
3/5 checks passed · 15.5/25 pts Jump to section ↓
Asset optimizationC79
1/2 checks passed · 5.5/7 pts Jump to section ↓
Lovable what actually works on this platform
Lovable apps run as Cloudflare Workers, and the platform rewrites Cache-Control after your code returns. The usual caching advice does not apply — these are the fixes that do.
- Time to first byte measured 191ms on this run — one sample, so treat it as a hypothesis and re-run six times before acting.
- Measure first, six runs, take the median. A cold worker isolate inflates the first request on almost every Lovable site — often 4-5x the median. One request, or an average that includes run 1, invents a problem that is not there.
- Do not try to fix this with Cache-Control headers. Lovable runs apps as dynamically-loaded Cloudflare Workers. The hosting layer rewrites Cache-Control after your worker returns, and the Cache API throws. Any header-level fix is discarded — the win has to come from inside the application.
- Find out which stack the project is. TanStack Start (server-rendered, has src/routes/) and Vite React SPA (client-rendered, has src/App.tsx) have different problems and different fixes. This cannot be told from the outside — the response headers are byte-identical — so check the repo before changing anything.
- If TanStack Start: cache the render in two tiers. An in-isolate LRU alone hits about 1 request in 6, because traffic spreads across isolates that do not share memory. Put a shared store (KV, or a table keyed on URL) behind it and the hit rate goes to roughly 7-8 in 8. Emit an x-app-cache: HIT-MEMORY|HIT-SHARED|MISS header while you measure — a HIT that is still slow proves the cost is cold start, not the cache.
- If Vite SPA: the bundle is the cost, not the server. TTFB is usually fine; what feels slow is downloading, parsing and executing JavaScript before anything appears. Split routes with lazy imports, prefetch the chunk on hover, and measure the JS transferred before first paint rather than TTFB.
- Never cache an authenticated route. Serving one visitor a page rendered for another is far worse than a slow site. Keep /admin, /profile and anything carrying credentials off the cache, and verify a logged-out fetch renders the signed-out view before you enable public caching.
- Press Publish. Lovable syncs code to git automatically but does NOT deploy. Production keeps serving the previous build until someone presses Publish — this is the most common reason a real fix looks like it did nothing.
The full instruction set, and a machine-readable copy of this report, live at saimonrasel.lovable.app.md — paste that URL into your AI builder's chat and it can work straight from these measurements.
Top fixes ranked by points recovered
This is a Lovable site — act on the report with your AI assistant
- ✓Platform detectedLovable — every check below links the official guideline for the fix in this stack.
- →Act on it with your AIThe machine-readable twin of this report gives an agent every failing check with its evidence, remediation and guideline link.
- →Check the originHosting sets the floor on TTFB. xCloud hosts any stack — agent/MCP access built in, bring-your-own-server pricing.
xSpeed is a WordPress plugin, so it can't automate Lovable fixes — and that's fine. Every check below links its official guideline, and the machine-readable twin of this report gives an AI everything it needs to plan the work (9 checks name a concrete remediation):
Read the speed report at https://xspeedcache.com/scan/r/saimonrasel-lovable-app-795431c20a.md — it lists every failing check with evidence and the official guideline for the fix. Produce a prioritized fix plan for my Lovable site, apply what you can, then re-test by POSTing {"url":"https://saimonrasel.lovable.app/"} to https://xspeedcache.com/api/scan and compare the scores.Hosting is half of every score.
Whatever the stack — Lovable included, the server behind it sets the floor on TTFB. xCloud — from the team behind xSpeed — hosts any platform (this site's own scanner runs on it), with agent/MCP access built in and bring-your-own-server pricing.
Explore xCloud.host →
D
56/100
Core Web Vitals & lab metrics
2/5 checks passed · 22.4/40 pts earned
Partial
Lighthouse performance score (mobile) 12.4/18 pts
69/100 (Lighthouse 13.4.1, mobile)
The composite Lighthouse score — every fix below moves it.
xSpeed Free
AI Optimize
AI prompt
Using my site's xSpeed MCP connection: run optimize_site, then run_benchmark to verify the score improved.Guidelines: Lighthouse performance scoring
Fail
Largest Contentful Paint ≤ 2.5s 0/8 pts
LCP 12.0s
Serve the hero content faster: cache the page, preload the LCP image, and ship critical CSS.
xSpeed Free
Page Cache + Preloader (Critical CSS in Pro)
AI prompt
Using my site's xSpeed MCP connection: enable page caching, start the preloader, and (on Pro) generate critical CSS for this page; then re-test LCP.Guidelines: web.dev — Largest Contentful Paint · Optimize LCP
Pass
Pass
Fail
First Contentful Paint ≤ 1.8s 0/4 pts
FCP 3.0s
First paint is gated on server response and render-blocking CSS.
xSpeed Free
Page Cache + CSS Minify
AI prompt
Using my site's xSpeed MCP connection: enable page caching and CSS minification, then re-test First Contentful Paint.Guidelines: web.dev — First Contentful Paint
D
62/100
Server response & caching
3/6 checks passed · 15.5/25 pts earned
Pass
Time to first byte ≤ 200ms 8/8 pts
TTFB 191ms (best of 2 requests from our scanner)
Guidelines: web.dev — Time to First Byte
Fail
Page served from cache 0/7 pts
No cache evidence in headers or HTML
Serve HTML from a static cache instead of rebuilding it per visitor.
xSpeed Free
Page Cache + Preloader
AI prompt
Using my site's xSpeed MCP connection: enable page caching, start the preloader so pages are pre-warmed, and confirm get_cache_status reports hits.Guidelines: MDN — HTTP caching
Partial
HTML compression (Brotli/GZIP) 2.5/5 pts
Content-Encoding: gzip
Compress text responses — Brotli typically saves ~15–20% over GZIP.
xSpeed Free
GZIP (Brotli in Pro)
AI prompt
Using my site's xSpeed MCP connection: enable GZIP compression (and Brotli if Pro), then confirm the HTML response is compressed.Guidelines: MDN — Content-Encoding · RFC 7932 — Brotli
Info
Efficient cache policy on static assets 0/5 pts
Needs the Lighthouse audit
Re-run when Lighthouse is available.
Guidelines: Lighthouse — Efficient cache policy
Pass
Pass
Clean redirect chain 2/2 pts
No redirects — the URL answers directly
Guidelines: Lighthouse — Avoid redirects
C
79/100
Asset optimization
1/5 checks passed · 5.5/7 pts earned
Info
No render-blocking resources 0/5 pts
Audit not reported for this page
Re-run when Lighthouse is available.
xSpeed Pro
Critical CSS + Unused CSS removal
AI prompt
Using my site's xSpeed MCP connection: generate critical CSS for the top pages and enable unused-CSS removal, then re-test.Guidelines: Lighthouse — Render-blocking resources
Pass
Minified CSS and JavaScript 4/4 pts
Lighthouse audit score 100%
Guidelines: Lighthouse — Minify CSS · Minify JavaScript
Info
Modern, optimized image formats 0/4 pts
Audit not reported for this page
Re-run when Lighthouse is available.
xSpeed Pro
Image Converter (WebP/AVIF)
AI prompt
Using my site's xSpeed MCP connection: enable WebP/AVIF conversion with URL rewriting, then re-test image audits.Guidelines: Lighthouse — Modern image formats
Info
Offscreen images lazy-loaded 0/4 pts
Audit not reported for this page
Re-run when Lighthouse is available.
xSpeed Free
Lazy Load
AI prompt
Using my site's xSpeed MCP connection: enable lazy loading for images and iframes, then re-test.Guidelines: Lighthouse — Defer offscreen images
Partial
Total page weight ≤ 1.5MB 1.5/3 pts
2.0MB transferred
Heavy pages are slow on every connection — compress, lazy-load, and trim.
xSpeed Free
Minify + Lazy Load + Image Converter (Pro)
AI prompt
Using my site's xSpeed MCP connection: enable minification and lazy loading (and image conversion on Pro), then re-check page weight.Guidelines: Lighthouse — Total byte weight
Past scans of saimonrasel.lovable.app newest first · every report keeps its link
| Scanned | Score | Grade | TTFB | Lighthouse | |
|---|---|---|---|---|---|
| 2026-08-31 09:01 UTC | 54 | F | 219ms | 66 | View report → |
| 2026-08-31 07:22 UTC this report | 60 | D | 191ms | 69 |
Recently scanned public reports All public scans →
Click anywhere or press Esc to close![Full-size screenshot]()