In this video· click a step to jump to it
Test recording
PageGains — app walkthrough
34,434 ms · 0 pixels changed · matches baseline
We built this regression test for pagegains.com — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against pagegains.com. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const findings = [];
const shot = async (n, slug) => {
const p = screenshotPath.replace(/\.png$/, `-${String(n).padStart(2, '0')}-${slug}.png`);
await page.screenshot({ path: p, fullPage: true });
return p;
};
const isOk = async (url) => {
try {
const rr = await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 20000 });
if (!rr || !rr.ok()) return false;Checks run
Notes from the demo run
AI-generatedPageGains' marketing site is tight and conversion-focused (the product eating its own dog food): a single hero with a live URL-audit input, social-proof strip of X posts from real users, a stark pricing block ($3.99/audit, credit packs up to 75% off), and an FAQ that plainly states an account is required to run an audit. The sign-up/sign-in flow is a modal (not a dedicated /signup route) offering both Google OAuth and email+password, and email confirmation is required before the account activates.
- Modal-based auth, not a dead routeThere's no /signup page (it 404s) — auth lives entirely in a 'Sign in'/'Sign up' modal reachable from the nav. Worth knowing for anyone crawling the site expecting a dedicated URL.
- Honest 0-credit gating post-signupA brand-new account genuinely has 0 free credits — submitting the first audit immediately surfaces the credit-pack paywall rather than faking a free run. No bait-and-switch; matches the pricing page's promise.
- Clean empty-state dashboardThe /account page's 'No audits yet' empty state is simple and on-brand, with the audit input repeated at the top so the next action is obvious.
- No free preview once authenticatedThe homepage FAQ implies audits are free to start ('every audit starts free'), but a logged-in account with 0 credits is routed straight to Buy Credits on submit — worth double-checking the free-preview promise is still reachable for logged-in users, since anonymous visitors may get a different (unauthenticated) preview path.
- Dashboard trigger is a JS button, not a linkThe nav 'DASHBOARD' control is a client-side dropdown trigger rather than an anchor tag, so it isn't independently crawlable/indexable — minor, but a semantic-HTML nit for accessibility tooling.
Share this run
Proof your app is not AI slop
This test was built for pagegains.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.