Methodology

How this works

The audits hold your numbers against published benchmarks and answer in four words. This page is the whole method: what each word means, how an area is judged, what we send and store, and every threshold the engine runs on with its source.

The four words

Calculator audits use these four verdicts. SEO reports group individual findings as errors, warnings, notices and passes.

Dead
A decisive test failed. Money is going into this area and not coming back, and until it is fixed everything else you spend here lands in the same hole.
Dying
The number is near the benchmark but on the wrong side of it. Nothing has collapsed yet. Another quarter like this one and it will be dead.
Alive
Above the benchmark. This area does not need fixing. It is the one that deserves more of your money and time.
Not judged
The number was missing, or you said you did not know. We do not fill the gap with a guess, so the area is reported as unjudged and the score leaves it out.

How a verdict is reached

The engine is a set of named tests, not a weighted opinion. Four rules govern all of them.

One decisive test can mark a whole area dead

Each area has a few supporting tests and one or two decisive ones. A failed decisive test is fatal on its own: if ROAS is under break-even, paid ads are dead however good the creative is, and however many other tests pass. Averaging would hide exactly the thing you came here to find.

Supporting tests move an area between dying and alive

No supporting test can kill an area by itself, and none can save one that failed a decisive test. They decide the middle ground: three creatives a week instead of one, a share rate that reaches beyond your followers, a canonical tag that exists. Each one names the number it compared and the benchmark it used.

Not knowing is a real answer

Every question in the marketing audit has a Don't know option, and choosing it costs you nothing. We judge what you gave us and list the rest as Not judged. An area left unjudged is left out of the score rather than scored as zero, because a wrong verdict is worse than an honest gap.

Fix-first is ordered by money, then by effort

Every dead or dying area carries an estimate of the rupees exposed each month. The audit ranks by that number and breaks ties with how fast the fix is, so the first item on the list is the one where the delay costs most.

What leaves your device

We keep only the numbers and the score, never who you are on our side. The two tools differ in one respect: the marketing audit never sends anything at all, and the SEO audit sends one public URL because it has to fetch that page.

Marketing Audit — nothing is sent

The whole calculation runs in your browser. There is no submit button and no API call, because there is nowhere for the answers to go.

Where it runs
Your own browser, on your own device
Where answers live
Packed after the # in the result link, which browsers never send to a server
What we store
Nothing. Delete the link and the record is gone
Who can open it
Anyone you send the link to, and nobody else

SEO Audit — one public URL is sent

Our own fetcher reads the address you typed, exactly as a browser would. No third-party API is involved, so your site is never handed to anyone else.

Identifies as
LapaasAuditBot/1.0
Refuses
Private, loopback and link-local addresses, checked again on every redirect hop
Caps each fetch
2 MB, 10 seconds, at most 5 redirects, ports 80 and 443 only
Rate limit
10 scans an hour per IP address, held in memory
Cache
The fetch result for 24 hours, keyed by the URL alone — nothing about the visitor

The deep pass: the same page in a real browser

The SEO scan reads the HTML your server sends, which is what a crawler gets on its first pass. Signed in, you can ask for one more thing: the same address loaded in a real Chrome on our server, with Lighthouse run against it. It takes up to a minute and you get ten a day, because a browser costs real memory. The fast scan is the product; this is the second half of the picture.

What the render adds

Nine more checks, scored alongside the rest rather than shown beside them, so a JavaScript gap moves the on-page score the way any other finding does.

The JavaScript gap
Words after rendering against words in the raw HTML. Over 40% warns, over 75% fails — at which point every content verdict in the fast scan was reading a shell
Core Web Vitals, in the lab
LCP good under 2.5 s, CLS good under 0.1, Total Blocking Time good under 200 ms as the stand-in for INP
Lighthouse
The performance, accessibility, best-practices and SEO scores, and the opportunities with the milliseconds each claims
What broke on the way
JavaScript errors thrown on load, and every request that failed or 404'd while the page drew
Proof it is the site
A few more pages rendered, so the same gap can be shown to be the template and not one page
A picture
The finished page photographed on a phone

What it still cannot see

One browser, one load, one moment, on our network. That is a lab measurement, and a lab measurement is not your customers.

Field data
Real LCP, INP and CLS at the 75th percentile — the numbers Google actually ranks on — exist only in your own Search Console and in CrUX
Your visitor's phone
We render on a throttled profile on our connection, not on a four-year-old handset on 4G in your city
Anything behind a login
The browser signs in to nothing, so a members' area or a checkout past the cart stays invisible
Anything that needs a click
The page is loaded and measured, not used. Content that appears only on a tap, a scroll or a hover is not counted
Your rankings and your traffic
Nothing here reads Search Console, Analytics or a rank tracker. Every number is measured off the page itself
How often
10 renders a day per account. The fast scan stays free, has no limit and needs no account

Every threshold the engine runs on

These tables are rendered from the same constants the engine imports, so this page cannot drift from the verdicts. Rows marked Our call are thresholds we set ourselves where no study gives a usable number; everything else names its study.

Organic click-through rate by position10

PositionOrganic CTRClicks per 1,000 impressionsSource
#139.8%398First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#218.7%187First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#310.2%102First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#47.2%72First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#55.1%51First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#64.4%44First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#73%30First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#82.1%21First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#91.9%19First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
#101.6%16First Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025

Between two positions the expected rate is interpolated, and past position ten it decays with a floor of 0.2%. That expected rate is what your real CTR is measured against.

Search4

What the engine checksThresholdSource
Searches that end without a click on anything68%SparkToro via Search Engine Land, 2026
The same figure when an AI Overview is shown83%SparkToro via Search Engine Land, 2026
Your CTR against the CTR your average position should earn — dead below50%Our callLapaas threshold — our own judgment, not a study.
The same comparison — dying below80%Our callLapaas threshold — our own judgment, not a study.

Paid ads5

What the engine checksThresholdSource
India Facebook CPM, top of the usual range₹400Sahil Khanna, 'Your Marketing Is Officially Dead' (2026) · Lapaas threshold
Sales-campaign CPM where the alarm starts₹700Sahil Khanna, 'Your Marketing Is Officially Dead' (2026)
New creatives tested every week, minimum3 a weekOur callLapaas threshold — our own judgment, not a study.
ROAS of the top Indian D2C advertisers, average3.2×Meta ROAS benchmarks, Indian D2C, 2026
LTV:CAC a business needs to stay viable3.9×Indian D2C unit-economics reports, 2026

Social10

What the engine checksThresholdSource
Instagram reach, share of followers a post reaches at 10–50K5.5%Socialinsider, Social Media Reach Statistics, August 2026 · 872,075 posts
Instagram interactions, share of followers at 10–50K0.55%Socialinsider, Social Media Video Statistics 2026 · 111,000 business-page videos
Instagram interactions, share of the people reached5.5%Buffer, State of Social Media Engagement 2026 · 52M+ posts across 200,000+ accounts
Facebook reach, share of followers a post reaches at 10–50K2.7%Socialinsider, Social Media Reach Statistics, August 2026 · 872,075 posts
Facebook interactions, share of followers at 10–50K0.2%Socialinsider, Social Media Video Statistics 2026 · 111,000 business-page videos
Facebook interactions, share of the people reached5.6%Buffer, State of Social Media Engagement 2026 · 52M+ posts across 200,000+ accounts
Instagram shares, share of followers per post0.1%Socialinsider, Instagram Engagement Report, May 2026 · 15M posts across 417,130 pages
LinkedIn impressions a post takes on a 10–100K page2,321Metricool, LinkedIn Study 2026 · 673,658 posts across 63,108 accounts
YouTube interactions, share of subscribers0.21%Quid (formerly Rival IQ), 2026 Social Media Industry Benchmark Report
Posts about the product or an offer, no more than60%Our callLapaas threshold — our own judgment, not a study.

Execution1

What the engine checksThresholdSource
Agencies already running on generative AI9 in 10Forrester Research, agency use of generative AI

SEO Audit, read off your page13

What the engine checksThresholdSource
A noindex tag, or robots.txt blocking the site — dead on its ownPresentGoogle Search Central documentation
Time to first byte — dying above0.8 sCore Web Vitals thresholds, web.dev
Time to first byte — dead above1.5 sOur callLapaas threshold — our own judgment, not a study.
HTML document — dying above400 KBOur callLapaas threshold — our own judgment, not a study.
HTML document — dead above1 MBOur callLapaas threshold — our own judgment, not a study.
Scripts on the page — dying above15Our callLapaas threshold — our own judgment, not a study.
Sampled images, total weight — dying above2 MBOur callLapaas threshold — our own judgment, not a study.
Title length30–60 charactersOur callLapaas threshold — our own judgment, not a study.
Meta description length70–160 charactersOur callLapaas threshold — our own judgment, not a study.
Words on the page — dead below100Our callLapaas threshold — our own judgment, not a study.
Words on the page — dying below300Our callLapaas threshold — our own judgment, not a study.
Images with no alt text — dying above30%Our callLapaas threshold — our own judgment, not a study.
Words between headings, for a passage an AI can quote — dying above300Our callLapaas threshold — our own judgment, not a study.

Sources in full8

Used forSource
Organic click-through rate at each positionFirst Page Sage, Google Organic CTR by Ranking Position, updated 28 May 2025
The share of searches that end without a clickSparkToro via Search Engine Land, 2026
CPM ranges for Indian Facebook and Instagram adsSahil Khanna, 'Your Marketing Is Officially Dead' (2026) · Lapaas threshold
The LTV:CAC ratio a business needs to surviveIndian D2C unit-economics reports, 2026
What good ROAS looks like for Indian D2CMeta ROAS benchmarks, Indian D2C, 2026
How many agencies already run on generative AIForrester Research, agency use of generative AI
Our own thresholds, used where no study gives a numberOur callLapaas threshold — our own judgment, not a study.
The sales-campaign CPM the talk treats as the alarm pointSahil Khanna, 'Your Marketing Is Officially Dead' (2026)
Run the Marketing AuditScan a URLOne takes your numbers, the other takes your URL.