What our ads actually did
We buy traffic for Harvv and publish what happens to it. Spend, behaviour, signups, updated every hour.
One campaign, not our whole account. Every figure below is scoped to a single ad set, so nothing else we run is folded in to flatter it. We publish the results, not the targeting: you will not find the audience, the interests or the geo split here. You will find every number they produced.
Day one of this campaign
Running since 2026-09-01. Nothing before that date is counted anywhere on this page.
The funnel
Our own pixel counts more ad-tagged sessions than Meta reports landing page views. Two different meters: Meta counts a view it attributes to one of its own clicks, while the pixel counts any session that arrived carrying a Facebook click ID, including return visits and links people forwarded. We report both rather than picking the flattering one.
Every stage here is the same population: sessions that arrived carrying this campaign's tag, and signups whose record carried it through. Nothing on this chart is a site-wide number standing in for an ad-driven one.
Day by day
Spend and sessions are separate charts on purpose: they are different scales, and one chart with two y-axes can be made to show any relationship you like. Dashed rules on the rate charts mark the days we changed something. A day with fewer than 25 in its denominator is drawn as a gap, because a rate over a handful of events is not a rate.
What moves with what
Pearson correlation across the days above. Nothing is reported yet: we hold correlations back until there are at least 7 paired days. A coefficient computed over three days is noise with a decimal point.
| Pair | Correlation | Days |
|---|---|---|
| Spend vs Ad sessions | not enough data yet | |
| Spend vs Signups from this ad | not enough data yet | |
| Ad sessions vs Signups from this ad | not enough data yet | |
| Ad sessions vs Rage-click sessions | not enough data yet | |
| Ad sessions vs Sessions reaching signup | not enough data yet | |
| Rage-click sessions vs Signups from this ad | not enough data yet | |
Every number, as a table
The same data behind every chart above, so nothing here is readable only as a shape.
| Date | Spend | Impr. | Clicks | LPV | Sessions | Reached signup | Signups | Rage | Dead |
|---|---|---|---|---|---|---|---|---|---|
| 2026-09-01 | $0.11 | 12 | 0 | 0 | 13 | 0 | 0 | 2 | 0 |
What we detected, what we changed
Every change to this funnel, what our own product or its gates found that prompted it, and which stage it was meant to move.
Detected The brief was agencies with at least two people. No ad platform sells headcount targeting, so it has to be inferred.
Changed Required a second signal: tools a staffed agency buys and a solo freelancer usually does not. Reach fell from 383,000 to 135,000, so it is filtering rather than rubber-stamping.
Detected The previous agency ad pointed at a comparison page: 29.7 KB compressed against our own 25 KB budget, with a headline that promised something the ad had not.
Changed A purpose-built page at 21.6 KB whose headline is the ad headline.
Detected Clicking a question wrote it into a box and stopped, then asked for a second click to see the answer. That is a dead click, the exact thing this product detects.
Changed Selecting a question now moves the question and the answer together.
Detected On a 375px phone the only call to action sat below the answer panel, off the first screen.
Changed A button now sits under the headline, measured at 450px on an 812px screen.
Detected Our own layout check flagged logo links at 34px and a button at 26px, under the minimum Apple and Google both publish and a defect this product reports to customers.
Changed All raised past 44px, verified at five screen widths.
Detected No signup record carried a campaign tag. The capture ran only inside the app, so anyone who arrived on a marketing page and clicked through to the signup form lost it on the way.
Changed First touch is now recorded on every marketing page. There is no backfill: what was never captured cannot be recovered.
Detected Creating the ad made Meta fetch the page: 8 sessions carrying the campaign tag and a click ID before a penny was spent. Our own bot check caught 1 of the 8.
Changed Days with no spend cannot report traffic, and flagged sessions are dropped.
Detected Two Dallas trades concepts ran at 1.22% and 0.91% click-through, under the 1.5% floor, while 85% and 100% of their clicks survived the page load. The hook was failing, not the page. The agency concept then ran at 1.86%.
Changed Different audience and geography, so not a clean comparison, but enough to keep the agency angle and stop rewriting landing pages.
Detected Interest targeting alone reaches everyone who works in advertising, most of whom cannot buy software.
Changed Added a business-owner signal as a required second condition rather than a broader interest list.
Detected Our first campaign spent about $7 for zero signups: 174 clicks, 98.7% of them bouncing at under 10% scroll.
Changed Every campaign now optimises for landing page views, which only count when the page actually loads in a browser.
Detected Instagram sessions reported page-load times of 93 to 111ms on Pakistani mobile networks, which is physically impossible.
Changed Facebook feed only, on every campaign since.
We are not claiming any of these moved a number yet. The campaign started on 1 September, the changes shipped the same day, and there is no before to compare against. When there is enough data on both sides of a marker to say something, this page will say it, and it will say when it cannot.
Take the raw data
Every daily row behind this page, as CSV: spend, impressions, clicks, landing page views, sessions, signup-page reach, signups, rage clicks and dead clicks. Free, but it needs an account, because an open export of a live campaign is a scraping target rather than a reader.
Sign up to downloadAlready signed inWhy we publish this
Harvv tells people what their visitors actually did, including when the answer is unflattering. It would be strange to sell that and keep our own numbers private. If the ads do not work, this page will say so.