In this video· click a step to jump to it
Test recording
loamly — app walkthrough
77,825 ms · 111 pixels changed
We built this regression test for app.loamly.ai — it's yours to keep, free.
Take this test with you
This is a real Playwright test, recorded against app.loamly.ai. Claim it into your own workspace and re-run it on every deploy — free.
export async function test(page, baseUrl, screenshotPath, stepLogger) {
const CFG = {"appEntry":"/en/workspace/lastest/dashboard","publicMaxNav":0,"fullPage":true,"steps":[{"goto":"/en/workspace/lastest/dashboard","dismiss":true,"waitMs":2800,"label":"ai-traffic-dashboard"},{"goto":"/en/workspace/lastest/attribution","waitMs":2200,"label":"attribution"},{"goto":"/en/workspace/lastest/intelligence","waitMs":2200,"label":"ai-intelligence"},{"goto":"/en/workspace/lastest/installation","waitMs":2000,"label":"install-snippet"},{"goto":"/en/workspace/lastest/settings/tracker","waitMs":2000,"label":"install-tracker"},{"goto":"/en/workspace/lastest/settings","waitMs":1800,"label":"settings"},{"goto":"/en/workspace/lastest/settings/billing","waitMs":1800,"label":"plan-and-trial"},{"goto":"/en/workspace/lastest/dashboard","waitMs":1800,"label":"dashboard-overview"}]};
const shot = function(i, s){ return screenshotPath.replace('.png', '-' + i + '-' + s + '.png'); };
page.setDefaultTimeout(6000);
// single combined noise-abort route (1 action instead of ~10)
await page.route(function(u){ return /sentry|segment\.com|googletagmanager|google-analytics|hotjar|posthog|connect\.facebook|cdn-cgi\/scripts/.test(u.toString()); }, function(r){ r.abort().catch(function(){}); }).catch(function(){});
let n = 1;
const FP = CFG.fullPage !== false;
const GOTO = 11000;
const wait = function(ms){ return page.waitForTimeout(ms||500); };
const dismiss = async function(){ const d = page.getByRole('button', { name: /skip|dismiss|maybe later|not now|got it|close|no thanks|continue|get started/i }).first(); if (await d.isVisible().catch(function(){return false;})) { await d.click({ timeout:2000 }).catch(function(){}); await wait(400); } };
const clickByText = function(src){ return page.evaluate(function(s){Checks run
Notes from the demo run
AI-generatedLoamly answers a 2026-native question: how much of your traffic is AI sending you, and which AI queries drive it. After a Supabase email-confirm and a quick brand+domain setup, the app opens on a clean 'AI traffic' dashboard — Visitors, Page Views, AI Rate, a timeline, Visibility Share %, Traffic Sources broken out by ChatGPT/Gemini/Claude/Perplexity/Copilot, plus AI Intelligence, Attribution, and a polished Tracker Settings page with the install snippet, allowed origins and a tracker secret. The IA reads like a focused analytics tool, not a bloated marketing suite.
- AI-traffic framing is legible in 3 secondsThe dashboard leads with 'let's see which AI queries drive traffic' and splits Traffic Sources by AI platform — the entire value prop (measure AI-referred visits) is obvious before you install anything.
- Tracker Settings is genuinely thoroughTracker status (Active / receiving data), a copy-paste install snippet, Allowed Origins management and a regenerable tracker secret — this is the kind of polish that earns trust for an analytics product.
- AI Intelligence + Attribution as first-class tabsBeyond raw visits, dedicated AI Intelligence and Attribution sections signal the product is about *insight*, not just a counter.
- Everything is an empty-state until the tracker is liveOn a fresh workspace every panel says 'No visitor activity / No traffic sources yet — install the tracker'. A demo workspace with seeded sample data would let an evaluator feel the product working before touching their site.
- Trial + plan nudges are loudA persistent 'You have 30 days left in your free trial — Pick a plan for free…' bar plus a 'Setup progress (0/2)' popover compete with the dashboard on first load.
3 visual changes
Share this run
Proof your app is not AI slop
This test was built for app.loamly.ai — 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.








