In this video· click a step to jump to it
Test recording
Spook — app walkthrough
56,665 ms · 93,561 pixels changed
We built this regression test for www.tryspook.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against www.tryspook.com. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const UA = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/140.0.0.0 Safari/537.36';
await page.context().setExtraHTTPHeaders({ 'User-Agent': UA }).catch(() => {});
for (const pat of [
'**/cdn-cgi/scripts/**/email-decode.min.js',
'**/browser.sentry-cdn.com/**',
'**/cdn.segment.com/**',
'**/connect.facebook.net/**',
'**/www.googletagmanager.com/**',
'**/static.hotjar.com/**',
]) { await page.route(pat, r => r.abort()).catch(() => {}); }
Checks run
Notes from the demo run
AI-generatedWe signed into Spook with Google and drove the whole authed app: Home, Opportunities, Calendar, Articles, Content performance, AI Visibility, Network, Boost DR and Settings, plus a keyword search from Opportunities. The strongest thing you've built is the pre-add preview: before we'd attached a single site the dashboard already showed a worked 'Yoursite' example with clicks, impressions and winnable-query counts, so the value landed before we committed anything. Adding a site kicked off a 7-day trial with no card and the six-step wizard let us skip Search Console without dead-ending.
- The empty state is a worked exampleYour dashboard renders a populated 'Yoursite' with 1,240 est. visits, 128 keywords and 16 winnable queries before the visitor adds anything. Most SEO tools show a blank chart here; yours sells itself.
- Wizard is skippable without breakingWe skipped Search Console at step 2 and the remaining steps still completed. The site landed in the app with 'setup never finished' messaging instead of a broken half-state.
- Session drops in under an hourOur authenticated session expired twice inside ~45 minutes and landed us back on /signin mid-walk. An evaluator who opens Spook, goes to read their Search Console and comes back has to log in again. Lengthening the Convex auth token TTL (or refreshing it on focus) would fix it.
- Notification modal covers the first authed screen'Want to know when your first article lands?' is centred over the dashboard on first paint, so the very first thing a new user sees is a permission ask rather than the product. Delaying it until after the first article is queued would read better.
7 visual changes
Share this run
Proof your app is not AI slop
This test was built for www.tryspook.com — 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.




















