9,275 subscribers for a Telegram channel for executives
And how it eventually slid into growth stagnation.
About the project in this case:

Evgeniy Sevastyanov is a manager and business owner. He is the author of the book “System Management in Practice”.

In his Telegram (TG) channel (Telegram is a messaging app with public channels; big in Russia and Eastern Europe), Evgeniy posts practical and genuinely useful content about management for executives, business owners, and top managers.
He sells courses, books, consultations, and “system implementations” of management methods that, as he puts it, “close open wounds and make management systemic.”
A valuable and needed project for businesses in Russia (RF = Russian Federation).
There were two stages of work on this project:
- 4,356 subscribers, at an average of 70 RUB (Russian rubles) each.
- 4,919 subscribers, at an average of 122.62 RUB each.
Let’s start with the first era:
Starting point:
Evgeniy had a Telegram channel. It had close to 6,000 subscribers. We launched the first ad campaign on August 22, 2022. As of August 18, TGstat showed 5,800 subscribers.

Screenshot from TGstat (a Telegram analytics service).
In the channel, Evgeniy posted and still posts useful management content for executives, business owners, and top managers.
He sells courses, books, consultations, and “system implementations” of management methods that, as he puts it, “close open wounds and make management systemic.”
How we met:
We met in a Telegram chat. I don’t even remember which one now. He wanted to grow the channel. I suggested organic growth with content analytics. He didn’t like that offer, yet the way of thinking landed.
For three to four months, we talked in one-to-two-hour консультации (consulting-style calls; common format in Russia) about different aspects of the product.
By the end of summer, Evgeniy decided to try pouring subscribers into the Telegram channel from VK. With our help. During our calls, Evgeniy also tried to run traffic himself, then got buried in tracking and constant tuning afterwards.
What we already had as assets:
Evgeniy already had two (even three) websites, with VK pixels embedded.
VK pixels are tracking scripts (JavaScript counters) inside VK’s advertising ecosystem (VK is a major Russian social network). They can detect and attribute user actions, build retargeting lists, and generally unlock a lot of ad mechanics. VK’s tooling feels less convenient here compared to what we jokingly call “Not-Instagram” and “Not-Facebook” (Instagram/Facebook are restricted in Russia, so people sometimes use euphemisms).
Evgeniy also had a lot of posts already published in the Telegram channel, which made it easier to find strong creative angles and texts for ads.
And he had a pack of images he strongly wanted us to use in ads.

What still needed to be done:
We still had to come up with audiences. My split-test methodology was already there 🙂
How we selected creatives:
I reviewed the Telegram channel and manually calculated ER (engagement rate) for posts in a simple table. I went from the newest posts backwards.
I didn’t have enough time to study everything deeply. I chose Evgeniy’s freshest ideas for executives and looked for places where the audience resonance shows up.
I picked a post about how “love for employees” can turn into hatred when boundaries and relationships are built in a structurally broken way: https://t.me/regularmanagement/340

The ER metric was strong, and the core of it came from comments. People found it in them to write their own thoughts.
I drafted five different headline options for this post.
I won’t show all the variants this time. The point of this case is not my copywriting workflow — I’ve shown plenty of that in other materials and in my public posts. I’ll show you the winning headline right away.

One of my favourite openings is the “two types” hook. When written well, it sounds bold, yet it stays honest with the reader:
On my personal page, my status says: “There are only two types of brands: the ones I promote, and the ones I haven’t promoted yet.” I wrote about how this works in one of my posts.

SPOILER: in long-term work, a different creative became the real workhorse. I’ll get to it later. For now, I’ll show the “audience carpet”.
We tested competitor audiences:

RESULTS:
Right after the best headline, we ran what I usually call an “audience carpet” (a broad grid of audience segments tested in parallel).

PLEASE NOTE: the number of clicks is too small to treat the results as statistically solid.
Still, I follow a practical rule: once an audience gives 3+ clicks, it’s worth trying again, or at least marking as “potentially working”.
Here are the takeaways from 12 audiences inside this “carpet”:
- LaL Middle (100K subscribers) — a lookalike (LaL = lookalike audience; built from a seed group) based on Evgeniy’s channel subscribers.
The upside: it reacted well to retargeting audiences that I’ve been accumulating since the very first test.
The downside: it could include people whose needs had already shifted. That can skew a lookalike. It might fail for that reason. If it worked, it would have been beautiful.
Paired with other audiences, it could also accelerate retargeting pool growth.
- Management keywords — an audience built with a “homeostasis” bet. Homeostasis here means a self-sustaining structure (stable enough to require minimal intervention and deliver predictable results).
These are keyword queries people search inside VK’s ecosystem — words that carry a clear intent to look for management knowledge.
- CA-ALL-visitors — Evgeniy’s audience used as a baseline for comparison. Website pixel traffic.
Think “control group”: which ideas can get close to it in efficiency.
Earlier in Evgeniy’s own practice, this audience worked well.
It’s close to homeostatic: people keep visiting the website, and the audience refreshes naturally over time.
4. CA-ALL-visitors (RM-School) — another website pixel audience from Evgeniy. Same idea: compare it internally and against other hypotheses.
5. Book “50 Stories” (landing) — same logic as #3 and #4, another audience sourced from Evgeniy.
- Just a list of target communities (CS) from 70 to 600K subscribers — these are communities from a parser (audience data scraper; widely used in Russian ad practice).
CS means target communities. These are communities Evgeniy’s audience is subscribed to, filtered by two rules.
First — at least 70 members in the community.
Second — up to 600K total subscribers.
That cuts off the blurriest and the huge “everyone hangs out here” groups.
We pushed this into targeting as a plain list of communities.
If it worked, we’d get one more homeostatic audience.
The weakness: everything depends on how the subscriber base of Evgeniy’s public community changed over time.
The logic: these communities represent a certain pattern of consumption — interests. If this hypothesis fired, it would give a lot of information for future work, both for us and for Evgeniy’s tasks.
Once we found a strong competitor, we could repeat the focus.
- From 3 mutual friends in Evgeniy’s community — a “mutual friends” graph targeting.
Direct work with a “handshake system” (graph logic through mutual connections).
At some point we noticed: the more niche the product, the more this kind of graph narrowing can signal demand and point to audience potential.
Starting from 3 mutual friends with subscribers: partly random, partly workable ties.
- Active competitor audience + LaL 30% — competitor audiences uploaded as a list of communities, plus we tuned the similarity slider.
The similarity slider can work well when the author has a strong core audience.
If it worked, it would become another homeostatic audience.
- Subscribers of the competitor communities we found — audience built from our market scan for Evgeniy’s business.
This is a cross-check of his assumptions versus ours.
- LaL community 10% — a lookalike based on Evgeniy’s community, with the slider set to 10% similarity. This LaL is built from the community’s active core: those who engaged in the last two weeks.
This partly softens the “inactive community” problem, though it doesn’t remove it completely.
If it worked, it would be relatively homeostatic.
- Competitor audience — similar to “active competitor audience”, except the community list goes into the “subscribers” segment. The difference: low activity in a competitor group doesn’t automatically mean a person has no interest.
Active users tend to be loyal in some way — to the problem and to the author.
That also gives a chance to catch people who are less loyal to the competitor.
- From 15 CS of Evgeniy’s community with a 1M filter by keywords — another parser-built audience, filtered by keywords around business, management, etc.
This audience includes people who are members of at least 15 communities from that pool.
Its weak spot matches other CS-based audiences, yet this approach can compensate, and it can be reused beyond Evgeniy’s community if it works.
The most effective ones were:
- LaL community 10% — 33.67 RUB per link click.
- CA-ALL-visitors — 25.25 RUB per link click.
- CA-ALL-visitors (RM-School) — 50.25 RUB per link click.
- Management keywords — 33.67 RUB per link click.
- Book “50 Stories” (landing) — 100 RUB per link click.
(and there was only 1 click — the audience was tiny, with potential, yet still tiny)
Continuing work with the project:
Evgeniy liked the start. We continued, and to lock attribution we began using invite links in the Telegram channel.
Even if your Telegram channel is public or private, you can create invite links, name them, and set some activation parameters.

After that, the link shows both the count and the specific accounts that subscribed through it.

So the calculation logic is VERY SIMPLE:
Budget spent divided by the number of subscriptions via invite links, and you get cost per subscriber.
Using different invite links for different “creative + audience” combinations works like UTM tags. We see which audience produced the result.
KPI before New Year 2023:
Evgeniy set a target: 1,000–1,500 subscribers per month at 50 RUB each.
It became clear very quickly: this KPI is unrealistic, because even when you get a subscriber below 50 RUB, the price climbs fast afterwards.
Traffic is people. Beyond auction algorithms, there are natural fluctuations: people go outdoors, they run monthly reports, they spend less time online, and so on.
For example, on September 21, 2022, traffic got MORE EXPENSIVE, if you know what I mean. This didn’t happen everywhere. For Evgeniy, we tracked CPC changes clearly.
The market has a persistent belief: when you send traffic to an external platform — moving people from VK to a website, or in our case to a Telegram channel — you lose around 30% conversion.
If we need a subscriber for 50 RUB, then the “wind adjustment” implies a target CPC around 35 RUB (50 minus 30%).
Many niches won’t get that CPC inside VK.
Also keep in mind: the person must want to subscribe to a Telegram channel. Some people still don’t have a Telegram account. It happens, yes. I met a person in 2022 who didn’t even have a VK account — not for political reasons, simply because they never had one.
So: if you take 70 RUB and apply that 30% adjustment, you get the desired ~49–50 RUB per subscriber.
Results by month 5:
We didn’t hit 1,000–1,500 subscribers immediately. We managed it in January.
In one month, 1,026 people joined the Telegram group. We spent 71,265.96 RUB
That’s an average of 69.46 RUB per subscriber.
The Telegram channel grew through our work, and through other factors too. Here’s how it looked in TGstat retrospectively:





February wasn’t finished yet at the moment this first stage ended.
What strategy we ended up with
I love automation and neural networks. From the very first test, I collected engagement signals for retargeting audiences:
- Like + click — people clicked a link or community, or liked the post.
- Click — people clicked a link or community.
Once we accumulated 1,000 clicks, I moved into Lookalike (LaL) audiences. That reduced CPC and cost per subscriber.
And it became a self-sustaining structure.
When our team got a dedicated targeting specialist, Lena, we discussed the subscriber growth strategy through LaLs in detail.
In practice: every 1,000–2,000 clicks, you rebuild the LaL and run the “workhorse” creative again.
By the way, here’s what it looks like in a shortened form:

You can see more details here
Sometimes we also ran older keyword audiences and website pixel audiences.
Then February brought two situations.
1. We had to stop working with the targeting specialist, so I temporarily took traffic management back. This happened due to changes in my personal and business strategy for the brand.
2. Evgeniy set a KPI: 3,000 subscribers at 70 RUB each. That forced a rethink of audience strategy.
Right now, the result comes from intersecting keyword queries with Lookalike audiences built from “click” retargeting pools. Broad reach, then “leveled” into homogeneity via keywords.
For example, I built a 2,500,000-person audience. After intersecting it with tested keyword queries, 49,000 individuals remained.
In a recent report, that produced a low-cost subscriber:

The last line shows 33 RUB 55 kopeks (kopeks are cents within RUB).
And I’ll have to go back to the parser to test a couple more ideas: intersecting keyword sets with audience settings, and trying different Lookalike types (VK has at least three).
How much we spent on the project
In total, at this point we spent 304,867.34 RUB on the project.
Average cost per subscriber hovered around 70 RUB. We used that as a guardrail and relaunched settings once it started climbing sharply.
So we brought around 4,355–4,356 subscribers by the time we wrote the first part of this case.
We don’t know Evgeniy’s exact minimal/maximal/average order values, so we can’t build unit economics. A cost per subscriber of 100 RUB could be fine, and 150 could be fine too. For now, we were happy enough with what we had.
In the end, the missing unit economics model became the failure point.

REVIEW
Evgeniy recorded a video review.
Second stage of work:
Which eventually hit a dead end.
Because without strategy, traffic, sooner or later, breaks.
When we wrote the first part of the case in February 2023, TGstat showed 11,385 subscribers.

At the time of writing this part, it’s 15,251:

A careful, picky person would notice that 11,385 + 4,919 = 16,304.
Correct. And keep in mind churn. Besides the people we bring in via ads, there are daily unsubscribes. When ads go on pause and the project enters stagnation, churn becomes even more noticeable.
Roughly 1,053 people “walked away” — unsubscribed from the Telegram channel.
Goal
From the previous case you could see: for February, the target was 3,000 subscribers at 70 RUB each (RUB = Russian rubles).
Timeline and budget
There was no strict deadline. We moved month to month, discussing KPI and performance, plus spend and budgets.
Simple maths gives: 4,919 * 122.62 RUB = 603,167.78 RUB. From late February to mid-August.
One detail: the cost per subscriber is rounded. Below, we show the amount 603,149.58 RUB. If you divide it by 4,919, you get 122.616300060988. Rounding rules give 122.62.
Yet if you multiply 122.62 by 4,919, you get 603,167.78. The gap is 603,167.78 – 603,149.58 = 18.20 RUB.
Total spend was 619,446.52 RUB, because we also had side goals: promotion of a mini-course about management.
Preparation / Start of work
What we ran into while scaling the volume x3:
Main problem: how to avoid dropping the previous KPI while the strategy for the new KPI is still being developed.
Second problem: the client still wanted cost per subscriber to stay under 70 RUB. That didn’t match the requested scale.

Here’s an example of the table we used to verify results. You can see: sometimes you get a subscriber cheaper than 70 RUB, and right next to it you see 100–270. The monthly average either missed the desired price, or missed the desired speed of subscriber growth.
To try to hit the new KPI, we tested audiences:
- Keywords tied to management and leadership.
In the end, they didn’t meet the cost target. We also pulled data from the website — looked at which keywords people use to find it and tested those keywords. That audience was expensive as well.

- An interest audience based on Sevastyanov’s community.
It didn’t meet the target KPI. Subscribers came in, just not at 70 RUB.

- Lookalike audiences — based on joins and clicks they worked for a while, then the audience gets depleted. Subscribers got more expensive month after month. Narrowing with keywords didn’t rescue the KPI either. Cost became consistently higher than 100 RUB by mid-summer.

- Competitor audiences. We tried separate community targeting with a broader similarity percentage, and also ran them as one combined segment.

We also split direct/indirect competitors. Direct ones were the cheapest, naturally: 221.19 RUB per subscriber.
Combined together, and also separately, the audience burned out quickly; splitting didn’t show a visible effect. We also built LaLs from them; costs didn’t drop…
Cheaper subscriptions came from website visitors. The issue: the website pixel didn’t accumulate enough visitors to fuel large-scale Telegram growth.

We tested ideas:
- We decided to collect keywords not as one pile, but like “fertile fields”. While some combinations burn out, other combinations wait until a fresh volume of people who searched those keywords accumulates.
Once the “second set” accumulates enough individuals, the first set goes into waiting mode, until the second set starts burning out.
Because we needed a large number of subscriptions, our spend scale was serious. Audiences didn’t refresh fast enough to replace the ones that burned out. Website-based audiences were especially valuable — they could produce subscribers at 30–40 RUB, yet they turned on so rarely that they couldn’t meaningfully lower the monthly average. We had to find additional audiences to carry the load. - We collected “click to community or link” and separately “click to community”. Then we set retargeting to people who clicked to community or link, while excluding people who clicked to community. That gave us a chance to push the people who didn’t subscribe to Telegram — focusing on a more motivated click.
This audience helped us “wait out” the time needed to gather volume. Once we had enough data to build LaL, we scaled cheaper subscriptions and for a long time kept cost under 100 RUB per subscriber. - To identify the cheapest age segment among subscribers, we created several ads and split them by age clusters to see where the cost rises. In VK’s ad cabinet we could only see click demographics, not subscriber demographics.

- From there we found “the age”. For us it was 36–44. We also usually limited age from 30+, then decided to test from 27+ to “fully exclude this segment”, and in some LaL + click-collection combinations they worked very well, because we hadn’t “burned them out” before.
- We switched some ads to manual bidding — to see volume behaviour in that mode.
Those setups barely spent, so we dropped the idea. - At some point we noticed: when one invite link runs for a long time, the count of subscriptions starts shrinking due to unsubscribes, and we can’t see the real number of people who joined during that period. We solved it by frequently replacing invite links in older ads.
If you haven’t seen this mechanism: it’s described in the previous case. Short version: regardless of whether the Telegram channel is private or public, you can invite via invite links. You can create unlimited links and place them anywhere. Each link counts how many joined through it. It also shows who joined.
When a person unsubscribes, the invite link’s count decreases.
What results we achieved

Total spend:
603,149.58 RUB spent for the entire period from February to mid-August on subscriber acquisition, bringing in 4,919 subscribers at 122.62 RUB each.
Plus 16,296.94 RUB spent on mini-course ads. 399 clicks at 40.84 RUB each.
Failures and fuckups
1. We planned to take video instead of text creatives and collect video views, then build a LaL from a relevant audience that watched through. The videos were up to 13 minutes — cutting the lecture shorter wasn’t feasible.
This hypothesis would work if we could gather enough audience volume within that time window. Yet those videos didn’t bring cheap subscriptions: spend on them pushed up cost per subscriber in the overall accounting and in the report for the client. We kept spend minimal, which stretched the collection period.
2. In April, we tested the new ad account (as you can see in the table above), while also running the old one so we could test in VK Ads without wrecking the subscription cost.
(VK has a legacy ads interface and a newer product called VK Ads. In Russia people often say “old cabinet / new cabinet”.)
That brought a set of nuances that shook our nerves a bit:
- The algorithm needs at least 3 days to learn, and budgets can’t be 100 RUB; you need at least 150 RUB per ad. Talking to VK managers made it clear: some budget burn here is part of reality. This is an all-in gamble: if you get results, great; if you don’t, that’s life. Instead of setting aside 400–500 RUB to test one audience, you plan 1,500–2,500.
- Everything we built the hard way in the old cabinet was too small for the new algorithm. Those audiences produced no results. In VK Ads you need large audiences — tens and hundreds of thousands — so the algorithm has room to move. In the old cabinet, interests could bring subscriptions at 600 RUB minimum, in the new one they were around 200 RUB. Given that other audiences gave nothing, that was still some positive signal.
- We had to postpone “our audience” settings from the old ad cabinet. Age limits affected the algorithm as well, so we had to remove those settings too.
3. In July, we got the green light to work with a lead magnet: a free mini-course delivered via a Telegram bot (a chatbot inside Telegram).
We tested the audiences that still worked at that point and also ran retargeting. We tested a landing page link and a direct bot link. The website performed better, so we continued with it. The overall cost stayed high. We could keep a visitor at up to 50 RUB, yet the subscription and bot entry were 400 RUB and higher.
In the end, cost still stayed under 100 RUB for a while, and in July–August it was approaching 200.
When working with the course, we hit a new difficulty: on our side we could only see clicks, while we couldn’t see which ads produced bot subscribers. That required deeper work with Yandex Metrica on the site (a Russian analytics tool similar in spirit to Google Analytics). The project was already put on pause.
Takeaways…
…and a moral for clients, plus the clear reason we transformed from a crew of traffic managers into a marketing agency.
In the first-price auction used by the old VK ads system, prices tend to climb.
In a second-price auction (which, by unconfirmed reports, is what VK Ads uses under the hood) — and in the model used by many platforms, including Yandex Direct — prices also climb, just more quietly. Second-price mechanics can dampen CPC.
When we advertised to the client’s “core audience” — people who were frequent customers — using a working creative, we got 80+ clicks at 8 RUB from one ad, and only two people subscribed to the Telegram channel.
They were asked to click to read more useful content about systematic leadership. The people who clicked and were interested in the topic didn’t see enough inside the Telegram channel to make them subscribe.
That pushed us to a very plain conclusion: marketing work has to happen. Audience gymnastics have limits. Internal processes and channel content matter: a cover can win attention, then the inside decides retention. Over that period we went through so many audiences that everyone who wanted to subscribe already did, and a big share unsubscribed over time. This brings you back to content design: the Telegram channel has to hold the audience and attract the next wave.
The concept is simple: a person sees an ad (creative), expects value behind the click, and clicks to check it.
If they check it and it doesn’t match their idea of value, they won’t do the desired action — here, subscribing.
You can also show ads to the wrong people and get curiosity clicks. Yet in practice, when you target the wrong people, clicks don’t grow, and in the old VK cabinet you clearly see negative reactions grow.
Over a full year, we accumulated 11,000 negative reactions.

Total clicks were 24,000 over the year — about twice the negative reactions.

Across both case stages we brought:
Stage 1: 4,356 subscribers. Stage 2: 4,919 subscribers. Total: 9,275.
(9275 / 24000) * 100 = 38.64583333333333 —> 38.65% conversion rate.
Close to 40% “hit the target”. That’s a precise result. It can be improved. The lever sits outside traffic tweaks. The lever sits inside marketing.
If we stop running ads to the Telegram channel, the audience drops sharply. If we continue advertising, we reach a point where we need to pour in roughly twice as much money compared to the beginning of the year, just to stay flat in subscribe/unsubscribe balance. Growth requires a strong daily plus, like 30+ people/day, so we can still collect ~1,000 people/month. With daily churn of 10–20, the inflow needs to be around 50/day to avoid dips during creative burnouts.
So yes — the project hit a dead end. How did that happen?
First, we no longer offer “pure traffic management” pricing on our side. That service no longer exists as a standalone product. It’s delivered either as an archived offer for those who bought it back when it existed, or in a hybrid mode where we quietly push marketing work inside the boundaries of the old tariff, which makes it slower. In this project, we started that marketing work slowly. Then the owner, seeing performance sliding, paused everything before we could reach key milestones.
Second, why “quietly”. The first suggestion to work on marketing and strategy was made back in winter, after we wrote the first case stage.
Two months before the pause, we delivered a report where we again suggested doing marketing strategy work.
On July 10, that suggestion was already voiced.
We might have lacked insistence. Hard to say. Clients often feel they know best. It’s their business. That’s fair. Still, business consulting exists for a reason, and so do courses about building businesses. There is always more knowledge than what fits in one head.
In short: we still haven’t found the best way to communicate it, and the client didn’t fully hear what we were trying to deliver.
So we keep doing it quietly, hoping to build the important milestones before a pause happens and makes a strong case harder to finish.
Most businesses come to us for results. They miss one thing: results matter to us almost more than to them. That’s the craft. We need a portfolio filled with interesting, effective work.
Even though in this case we brought 9,275 subscribers to the Telegram channel at a cost under 150 RUB, which for many niches in the Russian info-business market and in B2B is simply cheap, we’re unhappy with the outcome: traffic stopped working without a marketing strategy underneath. We don’t know yet whether we’ll continue with this client. We’ll try.
Credits
Case delivered by Digital Science Team. Project cast for “Regular Management”:
Lead Bogdan Zozulya:
https://vk.com/the_redbeard
https://tenchat.ru/bosmmartian
https://t.me/bo_martian
Project manager Margarita Peryshkina:
https://vk.com/hikaru_snow
https://t.me/bordergender
Traffic manager Lyubov Simanova (from March 2023): https://vk.com/aimoonsmm
https://t.me/Smm_button
Traffic manager Elena Baklazhanova (until the end of January 2023):
https://vk.com/snegnaja_zima
https://t.me/lena_baklazgan
Evgeniy Sevastyanov’s Telegram channel:
https://vk.com/remotemanagement