Recording of the visual regression run on api.lkmr.in · LinkMaster — app walkthrough (authed).

In this video· click a step to jump to it

A
Passed ✓

Test recording

LinkMaster — app walkthrough (authed)

80,671 ms · 187,339 pixels changed

We built this regression test for api.lkmr.in — it's yours to keep, free.

Take this test with you

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

export async function test(page, baseUrl, screenshotPath, stepLogger) {
  const STAMP = Date.now().toString(36);
  const APP = 'https://api.lkmr.in';

  let __step = 0;
  const shot = async (label) => {
    __step++;
    const tag = String(__step).padStart(2, '0') + '-' + label;
    const p = screenshotPath.replace(/(\.png)?$/, '-' + tag + '.png');
    await page.screenshot({ path: p, fullPage: true });
    stepLogger.log('📸 ' + __step + ': ' + label);
  };
+67 more lines — claim the test to get the full code.

Checks run

Run
✓
Visual
100.00%
Text
—
DOM
✓
Network
+88 −55
Console
✓
A11y
B
Perf
231 drift
URL
176 diverged
Variables
—
Full report
Log in →
187,339
Diff px
1m 21s
Duration
B
Accessible
WCAG 2.2 · 89
A
Fast
Web Vitals · 100

Notes from the demo run

AI-generated

We drove LinkMaster from a replayed session: shortened a real destination into lkmr.in/lastest-demo-…, opened that exact link's analytics, then walked QR codes, campaigns, UTM templates, branded domains, account settings and the Conversion Intelligence upgrade screen. The composer is the strongest screen you have — pasting a URL pulls the destination's own OG card into a Link Preview before you commit, which is a genuinely reassuring touch most shorteners skip.

Highlights
  • Link Preview before you shorten
    Pasting a destination fetches its title, description and favicon inline, so you can see you pasted the right URL before the short link exists. Small feature, disproportionate confidence.
  • Per-link analytics is a real page, not a counter
    Clicks, unique visitors, conversion rate, geography, device breakdown, referrers, Recent Clicks with country/city/device/browser/OS/UTM filters and an Include bots toggle — all present on a link with zero traffic, each with copy explaining what will appear.
  • Traffic Quality is a differentiator
    'Identify real users vs. automated traffic' sitting next to the click count is the thing that separates you from the free shorteners. It deserves to be higher on the marketing page than it currently is.
Friction points
  • The cookie card never accepts
    Neither 'Essential only' nor 'Accept analytics' persists a consent value — we clicked both repeatedly and nothing is written to localStorage or document.cookie, so the card re-renders on every page load. Worse, it is fixed bottom-centre at z-60 and overlaps the 'Create Short Link' button, so our first run's click was swallowed and no link was created. That is a signup-to-first-link blocker for real users on a 1280px viewport.
  • Paid-plan nav that upsells a plan you already have
    Conversations, Leads, Customers, Attribution and Conversion Intelligence are all in the sidebar but render the same gate reading 'isn't part of your plan. You're on the Pro plan.' Telling a Pro user their plan is not enough, five times, from five nav entries, reads worse than hiding or badging them.
Couldn't reach
  • /conversations, /leads, /customers, /attribution·All four render the identical plan-gate screen; we captured it once via /analytics/conversions instead of shipping four byte-identical frames

10 visual changes

Step 239,622 px changed
Before
Before
After
After
Diff
Diff
Step 380,032 px changed
Before
Before
After
After
Diff
Diff
Step 410,792 px changed
Before
Before
After
After
Diff
Diff
Step 522,499 px changed
Before
Before
After
After
Diff
Diff
Step 65,314 px changed
Before
Before
After
After
Diff
Diff
Step 75,324 px changed
Before
Before
After
After
Diff
Diff
Step 85,313 px changed
Before
Before
After
After
Diff
Diff
Step 97,041 px changed
Before
Before
After
After
Diff
Diff
Step 106,089 px changed
Before
Before
After
After
Diff
Diff
Step 115,313 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.
57,239 test runs recorded · 1,156 products tested with Lastest

This test was built for api.lkmr.in — 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.