Case study · Telegram Ads
Cut VPN paying user cost 3.4×: from $16.30 to $4.86
- Geo: CIS
- Channel: Telegram Ads
- Cabinet currency: EUR
CAC$4.86
Before$16.30
Paying users2,723
Spend$13,241
2,000campaigns launched
50creatives tested
$2,867best week spend → 923 payments at $3.11
The client is a subscription VPN service with a Telegram bot, targeting CIS. Free 3-day trial, then a paid subscription.
We tracked honest CAC: total ad spend divided by the number of users who actually paid. Signups and trials didn't count.
Starting point: 1 paying user cost $16.30.
- Total Spend — all spend across every campaign in the project
- Total Actions — 95,357 bot launches (not paying users)
What went wrong and how we fixed it
1. No way to tell which placement works
- Problem
- When a campaign has multiple channels or bots, you can't tell which placement brings payments and which one burns the budget.
- Solution
- We launched 2,000 single-target campaigns. Winning combos got scaled, losing ones got cut precisely — without killing working placements.
2,000 campaigns1 target per campaign
2. Audience burns out, creatives don't transfer
- Problem
- VPN placements burn out fast: the audience sees the ad several times and stops reacting. A winning text on one placement flops on another.
- Solution
- We constantly sourced new channels and bots instead of squeezing old ones. Tested 50 creatives across different targets, kept only the texts that led users all the way to payment.
50 creatives
3. Cheap clicks ≠ payments
- Problem
- Cheap clicks often turn out to be bots and junk traffic.
- Solution
- Every day we matched the client's payment stats against spend per campaign. Decisions to stop or scale a campaign were based on projected CAC, factoring in ongoing trials.
CAC $4.86was $16.30
- Top campaign: €2,407 spend, 6,997 actions at CPA €0.34
