Recording of the visual regression run on trusttraffic.net · TrustTraffic — signed-in app walkthrough.

In this video· click a step to jump to it

T
Passed

Test recording

TrustTraffic — signed-in app walkthrough

52,863 ms · 1,205,848 pixels changed

We built this regression test for trusttraffic.net — it's yours to keep, free.

Take this test with you

This is a real Playwright test, recorded against trusttraffic.net. Claim it into your own workspace and re-run it on every deploy — free.

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const shot = (n, slug) => screenshotPath.replace('.png', `-${n}-${slug}.png`);
  const STAMP = Date.now().toString(36);
  const NEW_SITE = `demo-${STAMP}.lastest.cloud`;

  const SCROLL_TO = (n) => "(async () => { const ease = t => 1 - Math.pow(1 - t, 3); const target = window.innerHeight * " + n + "; const from = window.scrollY; const anim = (a, b, ms) => new Promise(res => { const t0 = performance.now(); const step = now => { const p = Math.min(1, (now - t0) / ms); window.scrollTo(0, a + (b - a) * ease(p)); p < 1 ? requestAnimationFrame(step) : res(); }; requestAnimationFrame(step); }); await anim(from, target, 1100); await new Promise(r => setTimeout(r, 450)); })()";
  const TOP = "(() => { window.scrollTo(0, 0); })()";

  // ─── Scenario 1: signed-in dashboard ──────────────────────────────────────
  stepLogger.log('Scenario 1: Signed-in Crawlers dashboard');
  await page.goto(baseUrl + '/dashboard', { waitUntil: 'domcontentloaded' });
  await page.getByRole('button', { name: /^OK$/ }).click({ timeout: 2500 }).catch(function () {});
+70 more lines claim the test to get the full code.

Checks run

Run
Visual
100.00%
Text
DOM
Network
+110 −120
Console
A11y
B
Perf
URL
240 diverged
Variables
Full report
Log in →
1,205,848
Diff px
53s
Duration
B
Accessible
WCAG 2.2 · 89
A
Fast
Web Vitals · 100

Notes from the demo run

AI-generated

We signed into TrustTraffic on a fresh free account and drove the whole product: four-step onboarding, adding a tracked domain, the AI-crawler dashboard across 7/30/90-day ranges, the per-bot and per-page breakdowns, Citations, Settings and Pricing. The tick-box that seeds a new site with sample crawler hits is the single best thing on the page - it means an evaluator sees a full dashboard before installing a single line of middleware, which most analytics products make you wait days for.

Highlights
  • Sample data before install
    The 'sample data' checkbox next to Add site fills a brand-new domain with 90 days of realistic bot hits. We had a populated dashboard about eight seconds after signup, with zero tracker installed - that is the fastest time-to-value we have measured on a launch-week analytics tool.
  • The per-bot table answers the actual question
    'BY BOT - CLICK TO SEE ITS PAGES' grouped into Model training / Answer fetches / Search indexing / Other is the framing a site owner cares about. Naming ClaudeBot, Google-CloudVertexBot and Meta-ExternalAgent individually makes the abstract 'AI crawler' problem concrete.
  • Onboarding is four short steps and genuinely skippable
    Theme, notifications, add site, install tracker - with a Skip for now on every step. We reached the dashboard without being forced through a single required field.
Friction points
  • Add site leaves the button stuck on 'Adding...'
    After clicking + Add, the site IS created (the URL becomes /dashboard?site=<id>&created=1) but the page keeps rendering the old site and the button stays on 'Adding...' until a manual reload. We hit it on both runs and had to add an explicit reload to the test. A router.refresh() once the server action resolves would fix it.
  • Three of the four headline tiles are locked on the free plan
    On a first-run free dashboard, '404s hit', the 404-signal panel, bot-vs-human and the whole Citations tab all render as Pro upsells. The one panel that does show free data (hits per day) is doing a lot of work; moving one of the locked insights above the paywall would make the free dashboard feel less like a pricing page.

7 visual changes

Step 177,240 px changed
Before
Before
After
After
Diff
Diff
Step 277,568 px changed
Before
Before
After
After
Diff
Diff
Step 3243,685 px changed
Before
Before
After
After
Diff
Diff
Step 4254,655 px changed
Before
Before
After
After
Diff
Diff
Step 5184,954 px changed
Before
Before
After
After
Diff
Diff
Step 6174,998 px changed
Before
Before
After
After
Diff
Diff
Step 7192,748 px changed
Before
Before
After
After
Diff
Diff

Share this run

Earned · Lastest awards

Proof your app is not AI slop

LASTEST
starter
regressions
0
Badges stay live, ratchet upward, only downgrade on confirmed regression.
56,880 test runs recorded · 1,047 products tested with Lastest

This test was built for trusttraffic.net — claim it free

One click copies the test and baseline screenshots into your own Lastest workspace. Re-run on every deploy and catch regressions before your users do — free, no card required.