A new wedding marketplace was growing, but converting visitors into registered couples too slowly to build momentum. Over four months of continuous research and iteration (heatmaps, rage-click maps, session recordings, and A/B tests), registration conversion rose 36% and organic traffic 41%. The engagement is ongoing.
| Client | Wedding marketplace (two-sided: couples and vendors) |
| Sector | Marketplace / lead generation |
| STAGE | New platform, early growth |
| Engagement | Ongoing CRO – behavioural research, A/B testing, iterative optimisation |
| Primary goal | Convert visitors into registered couples; grow reach to prove the platform to vendors |
| Timeline | 4 months and continuing |
| Method | Heatmaps · rage-click maps · session recordings · A/B testing · post-registration email |
Results – most recent month vs. the first month of the engagement:
| Registration conversion rate | +36% |
| Organic traffic | +41% |
| Vendor contact clicks | +39% |
| Average engagement time | +31% |
| Bounce rate | −23% |
| Monthly active users | +11% month-over-month, sustained |
The problem
This platform connects engaged couples with wedding vendors. That structure creates a dependency the founders couldn’t escape: vendors only commit where the couples are, and couples only show up where the vendors are. The whole thing has to be primed from one side first, and here that side was couples. Attract enough of them, prove the audience, and the vendors follow.
So the number that mattered was registration – a visiting couple becoming a known, contactable user. Traffic was arriving. Registration was lagging. And a marketplace that can’t convert the side it has chosen to lead with doesn’t have a traffic problem to grow its way out of. It has a conversion problem that more traffic only makes more expensive.
Why the obvious answer fails
Redesign from opinion. The default, and the most confident way to be wrong. Everyone has been to a wedding, so everyone has a theory and a founding team’s intuition about its own product is the least reliable data available, because they can no longer see it as a stranger does. Opinion-led redesigns move things but rarely move the number.
Chase traffic. Pour budget into acquisition and assume conversion follows. But funnelling more visitors through a leaking registration flow just raises the cost of the leak. You can measure the growth in your ad spend more easily than in your user base.
Copy a competitor’s layout. You inherit their compromises without knowing which of their choices were deliberate and which were the same guesses you’re trying to avoid and none of it was tuned to your users.
Each of these skips the only step that reliably works: finding out what the actual users of this actual site are actually doing.
Solution 1: Read behaviour, not opinions
We instrumented the site with heatmaps, rage-click maps, and session recordings, and the users told us (in clicks rather than words) where the design was lying to them.
The clearest signal was frustration. The rage-click maps lit up on a section listing six features for couples. Visitors were clicking it repeatedly. The section wasn’t clickable. It was built to inform, and users had decided it was a doorway then hit a wall, and clicked again, because a person who expects a link doesn’t accept the first non-response.
This is one of the most valuable things behavioural research surfaces, because it is invisible in aggregate analytics. A conversion dashboard shows whether people convert. It never shows a user hammering a dead element in miniature protest. That protest is a gift: the user has told you exactly what they wanted to do, at the exact moment they wanted to do it.
So we gave it to them. Every one of the six features became a real link to its own page with a fuller explanation. We didn’t have to persuade anyone to want more, the rage clicks proved the want. We just removed the wall between the user and the thing they were already trying to reach.
That single fix converted repeated frustration into repeated navigation, and fed the engagement-time and bounce-rate improvements directly: users who reach the content they were reaching for stay, and don’t bounce.
Solution 2: Give before you ask
Registration is a cost the visitor pays before they’ve received anything. The instinct is to demand it early, at the top, before they can leave. The behaviour said the opposite.
We A/B tested the hero section. The challenger put a vendor search bar front and centre. The control led with copy and a registration prompt. Search won.
The reason is a principle every marketplace should have tattooed somewhere: let people taste the value before you charge for it. A search bar hands the visitor something immediately – they explore real vendors, see the inventory is real, feel the platform work – all before being asked to commit anything.
Reciprocity (Cialdini). People who have received something are measurably more willing to give in return. A visitor who has just been helped (allowed to search, shown real results) is a visitor more willing to register. Give first, and the ask lands softer.
We ran the same give-first logic down the page. Below the hero we tested testimonials against a feature showcase, and the features won. At this stage, a stranger’s endorsement matters less than a clear answer to the only question a first-time visitor is really asking: what does this actually do for me? Show them that, and trust follows on its own. Ask them to trust a testimonial first, and you’ve inverted the order.
Solution 3: Ask for the conversion where attention already is
The blog was pulling strong organic traffic, and the session recordings confirmed something analytics alone couldn’t: people weren’t just landing on the posts, they were reading them.
And at the bottom, where a genuinely engaged reader arrived having just been given something useful for free, the posts asked for nothing. No call to action. The most warmed-up visitor on the entire site reached the end of the funnel and hit a dead stop.
We added a call to action at the end of every post. Registrations from the blog rose 20%.
Then we let the reading data drive the editorial strategy. We didn’t optimise for pageviews. We optimised for the posts people finished, using scroll depth and session recordings to tell genuine engagement apart from a bounce with a long load time, and pointed the content strategy at whatever earned real attention.
And the rest of it
Four months of continuous work isn’t three clean wins. Alongside the headline changes ran the quieter ones that compound:
- Rebuilt the primary buttons for stronger contrast, so the main action stopped competing with the page for attention
- A post-registration email sequence for both couples and vendors – onboarding guidance that turns a fresh sign-up into an active user before the first-session enthusiasm fades
- Continuous smaller iterations on layout order, wording, and hierarchy
The engagement is ongoing. These numbers are a checkpoint, not a finish line.
The result
This is not one controlled experiment. It’s four months of many changes on a live, growing platform, and organic traffic in particular is influenced by factors well beyond the site itself. We are not claiming a single intervention produced 41% more traffic. We are claiming that continuous, behaviour-led iteration moved every metric that mattered, in the same direction, over a sustained period and that the two changes with the cleanest line to their effect are the ones with the cleanest mechanism: the rage-click fix (frustration → navigation) and the blog CTA (+20% registrations, a direct before/after on a single change).
Percentages flatter a new platform, and we’d rather say so than let you find out. A younger product with a smaller base moves more in relative terms than a mature one would. +11% month-over-month is real and it compounds, but it’s the arithmetic of early growth, not a promise that a ten-year-old site would see the same. Read these as evidence the method works, not as a multiplier to paste onto your own numbers.
If you’re in the same position
Your users are telling you what’s wrong. You’re just not watching. A rage click is a sentence. A dead-scroll is a shrug. This information lives in heatmaps and session recordings, and it is often more useful than anything a user would tell you in an interview, because they don’t know they’re saying it.
Let people taste the value before you ask them to register. The instinct to gate everything behind a sign-up is the instinct to charge before you’ve delivered. Give first (a search, a result, a genuinely useful article) and the ask converts far better.
Put the ask where the attention already is. Your most engaged users are the ones who read to the end. If there’s nothing there to convert them, you built the whole funnel and forgot the last step. Find your warmest moment and make the request there.
A “feature list” that gets clicked is not a feature list. It’s a menu. When users try to click something you built to inform, they’re not confused, they’re ahead of you. They’ve decided it should be a doorway. The fix is not to explain that it isn’t. It’s to make it one.
