Selin's store was not bad. Pages loaded, the product photography was tidy, campaigns went live on schedule. Even so, monthly revenue had drifted inside the same band for fourteen months. When she asked the agency, the answer was "we need more traffic"; when she asked the developer, the answer was "the site is already fast". Both were right from their own window, and both left the same question unanswered.
The missing third question was this: how far is this store from the best version of itself? The answer sits neither in a traffic report nor in a speed test. It sits between the two, along the line a visitor walks from the first screen to the checkout step. A GAP analysis measures precisely that line. I invented Selin for this article; I did not invent the two questions she asked.
A GAP analysis compares your store not with a competitor but with its own ideal version: it puts a number on how much more a site selling the same products, on the same budget, but built correctly at every step would sell. Below I have written out how that audit runs, step by step — which seven pages get inspected, how the four dimensions are scored, which formula turns speed loss into a lira range, how priorities are ordered and how a 90-day closing plan is built. If you need the definition of the term first, what CRO is is the starting point; how the work runs as a consulting engagement sits on our conversion optimisation service page.
What is a GAP analysis, and how does it differ from a CRO audit?
A GAP analysis is a method that breaks the difference between the current state and the ideal state into measurable items. In e-commerce the ideal state is not an abstraction: it is a store selling in the same sector, carrying a comparable volume of visitors, and built without fault across four core dimensions. The audit scores your store against that reference and writes the difference both as points and as money.
The difference from a CRO audit lies in scope and in order. A classic CRO audit produces one pool of hypotheses: what we will test, on which page, against which metric. A GAP analysis stops one step earlier and names which foundations are missing before anything is left to test. If measurement is set up wrongly, the test is invalid; if a page takes five seconds to open on mobile, an argument about button colour means nothing. A GAP analysis supplies that ordering rather than the test itself.
The second difference shows up in the output. A CRO audit leaves a test backlog; a GAP analysis leaves a distance map — how many points behind you are in each dimension, what those points are worth per month, and the order in which to close them. The test backlog is the third step of that map, not the first. Reverse the order and a team spends months solving the wrong problem with the right method.
Which seven pages get inspected, and why those seven?
The audit is capped at 7 pages: one home page, two category pages, three product pages and one checkout step. The number is not arbitrary; it is the shortest honest representation of the line a visitor actually walks. On a store with five hundred products, scanning five hundred pages produces more data but not better decisions, because error patterns live at template level: if the category template is broken, two pages show the same fault, and so would two hundred.
- Home page (1 page): where the value promise is set. This is where you see whether a visitor gets an answer, in the first seconds, to "what is sold here and why does it suit me".
- Category pages (2 pages): the filtering, sorting and listing logic. The two busiest categories are taken, because the weight of the traffic passes through them.
- Product pages (3 pages): the screen where the purchase decision is made. One page shows the exception, three show the pattern — you need three to read template consistency.
- Checkout step (1 page): the point with the highest abandonment. Forced sign-up, a long form and a delivery charge that appears late are counted here one by one.
The second benefit of a fixed scope is repeatability. Scan the same seven items three months later and the difference in score reads directly. An audit that changes its scope on every run makes what it measures incomparable — and a measurement you cannot compare cannot prove progress.
How do you measure semantic consistency?
Semantic consistency is whether the home, category and product copy state the same value promise. It is measured across three items: whether the headings contradict each other, whether the words a visitor types into search have a counterpart in the page copy, and whether the promise made in the ad text is met on the landing page. This dimension carries 25 of the 100 points.
The contradiction usually starts innocently. A store whose home page says "handmade, limited production" runs a category heading that reads "something for every budget", while the product page mentions neither the craft nor the price position. When three pages state three separate promises, the visitor remembers none of them and the decision collapses into a price comparison.
The money value of this item shows up in the ad budget. The share of message mismatch that turns into waste is found by multiplying monthly ad spend by the shortfall in the consistency score, then capping it with a conservative attribution factor — one half. Writing the whole of the waste down to mismatch would be an overstatement; a half is the reasonable share for visitors who arrived through an advert and did not find what they came for. On the performance marketing side, this is one of the few items that lifts revenue without lowering cost per click at all.
Why do UI/UX and cognitive load pull conversion down?
Cognitive load is the mental effort a visitor spends finding the next step. It is measured from the first screenshot of the page: how many separate calls to action there are, which one dominates, whether the primary action is visible without scrolling, and how many visual elements compete with it. This dimension also carries 25 points — equal in weight to semantic consistency, because saying the right message in the wrong layout loses the message just as surely.
What raises the load is usually excess rather than absence. When "add to basket", "add to favourites", "compare", "size guide" and "apply a voucher" all sit at the same visual weight on a product page, the visitor cannot work out which one is the primary action. As the cost of deciding rises, so does abandonment; every button added takes a share of the visibility of the main one.
What lifts the measurement out of the subjective is the screenshot itself. "The page is cluttered" is an opinion and gets argued about; "there are five calls to action on the first screen, the primary one ranks third and falls below the fold" is a finding and gets fixed. That difference decides whether the audit survives the meeting it is presented in.
How do you turn page-speed loss into money?
The honest way to turn speed loss into money is to count only the delay above the threshold. By Google's Core Web Vitals thresholds, an LCP under 2.5 seconds counts as "good", so the loss is calculated only for the seconds above that line. Speeding up a page that already sits below the threshold may well pay off, but writing that gain down as a loss inflates the figure and leaves the report indefensible.
The formula takes four inputs: monthly visitors, average order value, the current conversion rate and the average delay above the threshold. Each second of that delay is assumed to cost roughly 4.4% of the conversion rate; the constant is the conservative lower bound taken from Portent's 2019 analysis of page speed and conversion, and the methodology appendix prints it with its source on every run. The measurement is taken on at most three of the home and product pages, using mobile LCP, CLS and TTFB.
- Find the delay above the threshold: subtract 2.5 seconds from the measured mobile LCP; if the result is negative the loss is zero and the formula never runs.
- Work out the monthly converting visitors: multiply monthly visitors by the current conversion rate.
- Multiply out the loss: converting visitors × average order value × 0.044 × seconds above the threshold. The result is the expected monthly loss.
- Turn it into a range: apply a band of between ±12% and ±35% around the result, according to the share of inputs that were measured.
The result is written as a low-expected-high range rather than a single figure. The width of the range depends on the quality of the inputs: supply the traffic, the basket value and the conversion rate yourself and the uncertainty falls to ±12%; leave all three to sector medians and it opens to ±35%. Every input is marked in the report with a measured or an estimated badge. A single number looks more persuasive, a range is more honest — and a budget decision taken against the lower end of the range stays on the safe side.
Which costs do gaps in the tracking setup create?
The tracking setup carries 20 points and is the lightest of the four dimensions — yet when it is missing it makes the other three unreadable. The audit checks three items: whether the GA4/gtag tag is installed and the conversion events are defined, whether the Meta Pixel actually fires on the pages, and whether a session analytics tool — Hotjar or Clarity, say — is present at all.
The cost of missing measurement is not a loss line but a fall in the quality of decisions. If the conversion event is defined wrongly, the ad platform targets the wrong audience and the budget drifts a little further off course every day. Without session recording, guessing becomes the only route to the reason behind checkout abandonment. If GA4 is installed but the e-commerce events are missing, the revenue report and the platform report disagree, and the discussion leaves the data behind for opinion.
That is why the order matters: measurement is repaired first and tested afterwards. The same sequence is stressed in what a real e-commerce agency changes — pixels and conversion tracking go in before any campaign. In e-commerce consultancy this is the work of the first two weeks; every measurement repair postponed means data lost in retrospect, and that data never comes back.
How do you set priorities: impact or effort?
The ordering comes out of a single ratio: expected monthly impact divided by implementation effort. Impact is the monthly lira range you expect to recover by closing the item; effort is the number of working days it takes to put the change live. Any ordering made without writing the two side by side ends up following the priority of the loudest stakeholder in the room.
In practice the list falls into four buckets. High-impact, low-effort items are done inside the first fortnight: defining a missing GA4 conversion event takes half a day, removing the forced sign-up at checkout takes a few days. High-impact, high-effort items are planned and budgeted; rebuilding a product page template takes weeks. Low-impact, low-effort items fill the gaps. Low-impact, high-effort items come off the list — and keeping the removed item on record with its reasoning stops the same idea from returning to the meeting six months later.
Two rules apply when the impact figure is written. First, the sum of the item-level impacts cannot exceed the total recoverable amount that was calculated; if it does, the items are scaled down proportionally, because writing the same lira against two items inflates the report. Second, every item carries the finding it came from: an impact figure not tied to a concrete measurement such as "product page mobile LCP 4.1 seconds" is a guess, and a guess cannot carry a priority order.
How do you build a 90-day closing plan?
Ninety days split into three blocks of thirty, and each block carries a single responsibility. The span is not arbitrary: reading a meaningful difference in conversion on an e-commerce site takes at least one full purchase cycle and one campaign period. A difference seen inside a shorter window may be seasonality rather than improvement.
- Days 1-30, measurement and quick wins: GA4 conversion events are redefined, the Meta Pixel is verified, session analytics is installed. Within the same month the most visible friction item at checkout is removed. By the end of the block you hold a baseline measurement you can trust.
- Days 31-60, speed and the purchase flow: on pages carrying an LCP above the threshold, image weights, third-party scripts and server response time are dealt with. The checkout form is trimmed field by field, and the delivery charge is made visible at the basket step.
- Days 61-90, message and interface: home, category and product copy are aligned around a single promise; the number of calls to action on the first screen is reduced and the remaining primary action is made dominant. The first A/B tests also start in this block, because measurement is now correct and the infrastructure can carry a test.
Whether the plan worked reads off a single table on day ninety. The same seven pages are scanned again, the scores of the four dimensions are set beside the first run, and the money value of the closed gap is compared with the range in the first report. If the score rose but revenue did not move, the hypothesis was wrong; saying so plainly is part of the audit's job.
The most common mistake is reversing the order. A team that redesigns the interface first and leaves measurement for later cannot say three months on what actually worked: it holds a before and an after, with nothing in between. That is why giving the first block of a 90-day plan to measurement is not up for negotiation.
The thesis in one sentence: your store's real problem is not traffic but the unmeasured distance to its ideal version. The concrete test you can run today — open your home page, your two busiest categories, three product pages and your checkout step on a mobile device in that order, ask one question on each screen ("what is the next step") and note how many seconds the answer takes. If the answer is late on four of the seven pages, it is time to set the GAP analysis up as an audit. In the GYMWOLVES case, once the data flow was repaired and the funnel rebuilt, sales rose 12× in three months and session duration tripled after the product page improvements; when the order is right, the gap that closes can be that large.
Running the audit described here by hand takes one to two working days; if you would rather run the same framework automatically, Diagnoo scans the same seven pages from your store address and scores the four dimensions on the same weights. The arithmetic works exactly as set out above: loss is written only for the delay above the 2.5-second LCP threshold, and the result comes back as a lira range rather than a single figure.