6,418 Instagram Followers for a Cosplay Model with OnlyFans — Case Study (Meta Ads, Linktree Pixel, X)

About the project

At the client’s request, we can’t disclose the nickname. So we’ll use a codename for clarity and a cleaner story. Let it be “Riri”.

Ethical stance

Why would a marketing agency like ours even take on this project?

Our slogan is sales = love*truth². Love, as humanism, when working with OnlyFans models, means we don’t judge whether this is a “worthy” way to earn money for a woman or a man.

We prefer giving growth tools. Let the person decide for themselves. If they like this income — great: we explore new nuances of human needs and motivation.

If they don’t — we can help with strategy and promotion in a different business as well.

Quickly about two “eras” of work

Our task was to grow followers on Instagram and OnlyFans. Riri wanted to push her Instagram to 100,000 followers. At the start of this round, she had about 20,500.

The underlying assumption was simple: statistically, some of that audience would convert into subscribers on paid platforms. Patreon and OnlyFans, for example.

Spoiler 1: it doesn’t work like that. We’ll explain what actually works closer to the end.

IMPORTANT:
If you’re not interested in the details that create the result, jump straight to “4. Estimated CPC and subscription CR” — you’ll see the calculations and screenshots of some promoted posts.
Then go straight to the finale for the conclusions: who can rely on a “just add followers” strategy, and who can’t.

Spoiler 2: we didn’t reach 100,000 followers. We did reach 8534 new followers before unfollows. After unfollows, the net result was 6418 followers.

First era

The first era started in autumn 2020, when the account had about 2,600 followers. Sadly, we didn’t keep screenshots. And because the model wanted anonymity for this case, we couldn’t show the account anyway. The task was straightforward: get the account to at least 10,000 followers. The budget was tight, so it took almost a year.

Back then we found audience settings that clicked cheaply and subscribed consistently.

In parallel, we analysed the posts on the account and the posts of other models, then gave recommendations for content marketing and organic growth.

From September 2020 to October 2021 we added 7,400 followers.

Note: there was no OnlyFans then. It was a pure cosplay account, with a goal to grow followers outside Russia (the original text uses “RF”, Russian Federation).

Second era

Our second run began with difficulties.

Meta’s scale often relies on machine moderation and many automated triggers. So you have to do everything carefully, patiently, and with attention to detail. You don’t want to wake up the restriction algorithm and catch bans on key ad assets: Business Page, Instagramaccount, Business Manager, Ads Manager.

Another issue: the account had operated for a long time inside Russia. That meant we couldn’t run ads directly from Instagram in the usual “easy” way (this is tied to regional restrictions and account history in that region).

Mini-lecture:

To run Instagram ads, a regular user can simply press the “Promote” button, connect a bank card, and that’s it.

That’s how it looks from the outside.

Before, Instagram would often ask you to switch a personal account to a business account. But there’s also the “creator” account type. A creator account doesn’t have to be linked to a Facebook Business Page, which makes promoting a post via the “Promote” button simpler.

What actually happens inside Meta:

You have an entity called an Instagramaccount. When you click “Promote”, two more entities are created automatically. You don’t see them, but they exist:

Ads Manager and Billing.

Ads Manager places your post across ad placements in Instagram Feed, Stories, Reels, Explore, Explore home.

Billing counts the money and charges your card when it’s time to pay.

When you want to advertise “professionally”, you have to create more entities and then connect them.

Specifically:

Business Page on Facebook (if you don’t have one yet).

Business Manager — it will control all of this.

Meta Pixel — if you have a website or a multi-link page, like link.tree (Linktree — a service that hosts multiple links on one landing page).

The correct order for the whole ad setup:

1. Create a Business Manager, then a Business Page.

2. Link the Business Page to the Instagram account.

3. Bring both into the Business Manager.

4. Add a payment method (a card) in Billing inside the Business Manager.

5. Then either create a new Ads Manager (ad account) there, or connect an existing one by ID (you can see the ID inside the Instagram account settings).

6. Tell Ads Manager it can use the payment method from the Business Manager.

7. Then you still have to set permissions everywhere so that all these objects can “use each other”. A neat little paradox.

This is a high-level description. The internet has more detailed versions. I’m describing it here to show what kind of acrobatics you deal with when your project sits in a “ban risk” zone.

So, Meta Platforms has a thing called “partner access” for assets.

Risk compensation:

The worst-case ban is a ban on the core ad structure — the Business Manager, or even the personal account.

In practice, when it’s ad-related, the usual target is the Business Manager.

In Meta, you can grant access to assets via partner access.

This means an object isn’t fully “added” into your Business Manager. It exists there on lighter terms, and can be removed with smaller losses if something goes wrong.

If you connect the Business Page and Instagram account to a Business Manager via this access mode, it becomes easier to detach them later if a ban hits the core structure.

Then you can start again with fewer losses.

There are a couple of nuances, though.

Now we’ll go step by step: what we did and what we had to work around.

1. Check whether the ad setup is healthy: Business Manager, Business Page, Instagram account. Check whether Meta Pixel is present — Meta’s tracking tag that helps a lot with ads.

2. Create one more Business Manager and a Business Page inside it. This is a backup: if the main BM gets banned, the backup BM should still have at least one business page.

In other words, one BM is created as a sacrificial layer.

3. Take the ID of the new Business Manager and grant partner access to the main ad assets from the first BM.

So if this sacrificial BM sinks, you can revoke access. The Pixel, Instagram account, and Business Page won’t be dragged down with it.

4. The ad account (Ads Manager) is better created inside the new sacrificial BM.

To run ads again, when creating a BM you simply select a location outside Russia (it asks you), and choose any currency except roubles.

Then connect a payment card issued outside Russia. That’s it.

After that, you still need Instagram to “see” the new ad account so everything syncs back. Then ads can run again.

In the first month, we tested different audiences. That’s why we ran ads via Ads Manager, not via the “Promote” button. This gives you proper split-testing design: one photo, one text, but five different audience settings, to find the lowest CPC, for example.

That approach didn’t give us transparency on how many people actually followed after clicking — the CR (Conversion Rate) into a follow. Later we switched to a more “clever” method via Business Suite. It feels more native for users, and gives clearer results for us.

1. Audience verification

Initially we wanted cheaper traffic and planned to target Mexico and Brazil. They had performed well in the first collaboration. But Riri’s goal changed: she wanted potential OnlyFans subscribers, not just Instagram followers. That meant people with enough disposable income and/or motivation to spend on this kind of content. The client also requested the USA as the core country.
We agreed to test it, although we expected higher CPC.

We decided to run a split test across audiences.

We already had a creative that worked well in the previous run. Here’s how we set up audiences:

1. Men 30+ with no interests specified — a control group. Later, when we talk about gender and age, we mean these baseline parameters, then we add interests. This audience can show clickability thanks to Instagram’s ML delivery, which often finds the right users based on behaviour.

2. Lookalike 1% from followers, about 2M people — USA. The audience is still broad, so we’ll set gender and age later at the campaign level.

3. An interest-based audience around the model’s main fandom.

4. One part of a game + cosplay, because it performed well in previous launches.

5. The main fandom + cosplay.

We wrote this note before launch:

“We don’t know how many followers we’ll get because Meta’s reporting isn’t always straightforward. For now we look at CTR/clickability. Later we’ll promote posts to the working audience and measure follower growth.

Followers may still come from these audiences. We’ll verify this via subscription dynamics in the account. We’ll compare against organic behaviour (before ads). We need more data to rule out random spikes.”

While the campaign was running, we also assessed Telegram as an extra step in the funnel (TG = Telegram, widely used in Russia and Eastern Europe, also used internationally). To decide, we analysed stats using TGstat (a Telegram analytics service). We reviewed two random adult-content creators: Lada Lyumous Cosplay and BadGirlReislin.

They were simply well-known to part of our team.

The key parameter: countries where subscribers come from. In those examples it was mostly Russia and Brazil. We cared about the USA at that moment, so it looked like Telegram wouldn’t fit.
Then we asked directly: we ran a story poll asking whether Riri’s followers use Telegram. It turned out a meaningful share from the USA did use it. So we decided: we build a channel.

We also needed global stats about OnlyFans users: who uses it more often, relationship status, age. This is where the real science starts. We looked for sources with solid sampling, not stereotypes, guesses, or the client’s assumptions. A more independent reference point. Research on sexual content and new platform formats is limited.

Litam, S.D.A., Speciale, M. & Balkin, R.S. Sexual Attitudes and Characteristics of OnlyFans Users. Arch Sex Behav 51, 3093–3103 (2022). https://doi.org/10.1007/s10508-022-02329-0.

We concluded: the most common users are men 20+ in marriage or long-term relationships. We tested that logic in targeting. Results were better when we targeted single men, but the difference versus “age only” wasn’t dramatic. Here we rely on Instagram’s strong delivery algorithms: they infer interests well.

We got these results during the “research verification” phase:

See how CPC for M 18–25 with no interests didn’t drop sharply and didn’t rise sharply. It was comparable to the “working setup” M 30+ / fandom / cosplay.

So we validated the research direction, and later launches switched from men 30+ to men 20+. Expanding an audience in Meta tends to help because the algorithm is interest-driven. You simply give it more eligible targets for delivery.

2. The problem of tracking traffic to OnlyFans

Growing Instagram is good, but the real goal is Riri’s revenue. So we needed a more explicit funnel. We set up Linktree PRO. If you don’t know it: Linktree is a multi-link landing page service. The PRO version gives deeper analytics and supports Meta Pixel integration — a tracking tag that helps you collect audiences of people who clicked specific links.

Why not just run ads and hope people subscribe on OF? Or simply place a direct link?

A direct OF link doesn’t let us track transitions properly and attribute them to ads. In real life, if you ask users, you rarely hear “I saw the ad”. You hear “I just stumbled upon it in my feed”.

A tracking tag on the landing page (here: the multi-link page) is a small code snippet. It records clicks and sends data into the ad platform. Once you have enough event signals, you can build lookalikes of people who clicked the specific link you care about, or retarget them.

So our plan looked like this:

Run ads via Ads Manager, one ad to one audience => objective: engagement => link to Linktree => Meta Pixel connected to Linktree => monitor event accumulation in Meta Events Manager. If our custom events aren’t visible, use Linktree’s auto event LinkClick => track conversion state. This way we see demand for OF from paid traffic and we accumulate audiences of people who fired those events.

For example, a test can be set for 5 days.

It may sound complex, but setup takes under 15 minutes. Checking progress happens inside Meta, in Events Manager. It looks like this:

Here we see a list of five events.

You can’t rename them. The main thing is to remember which event corresponds to which button or link on the page you advertise.

PageView — how many people viewed the page;

linkClick — an auto goal created by Linktree, meaning a click on any link. It’s not perfect for us because we need to know exactly which link a user clicked;

Lead — the button that sends people to OF;

View content — the link to the Telegram channel;

Subscribe — return to Instagram. Linktree had a link back to Instagram too.

And here we see how many people clicked each link. Later we can build a lookalike audience. It’s better to collect more events, so the machine has enough data. If volume is low, you wait a few days while the algorithm does its work.

3. Which audiences worked in the end

As we said earlier, we found demographic parameters that produced results. But throwing ads at “all men 21+” regardless of relationship status doesn’t fit targeted advertising logic. Also, the interests we used earlier were narrow. And Riri cosplays characters from different fandoms. So it was easy to generalise which interests to test: gaming, anime and manga, cosplay.

Then an important variable appeared: we built a LaL (Lookalike) from people who clicked through to OnlyFans.

LaL audiences in Meta usually produce cleaner and cheaper CPC.

Cleaner means they typically bring followers.

We decided to intersect LaL with interests. Before that, we ran pure LaL for a long time. We knew it could deliver well. Later results started dropping: the audience began to burn out, and we had to optimise delivery.

The winner was the intersection of LaL and cosplay. Next: how did we promote existing posts? There used to be tricks to add custom audiences into a boosted post. Since then, Meta evolved and built Business Suite. From there, you can launch any post into paid traffic via a button, while still using audience controls — a hybrid between a boosted post and Ads Manager.

4. Estimated CPC and subscription CR

Every project starts with numbers. We calculate unit economics. It helps us show what results we aim for and why.

At the start we had $100 per month. Later we set a clearer KPI (30K followers) and got a bigger budget, because it became obvious: ads should run daily. So we moved to $300 per month. These calculations were purely mathematical, without modelling traffic dips, auction volatility, and so on.

Our FORECAST numbers were:

Cost per click: $0.24

Number of clicks: 416.67

Number of followers: 291.67   Cost per follower: $0.34

What we got ON AVERAGE across months, including dips:

Cost per click: $0.01

Number of clicks: 654.25

Followers per day: 75

Cost per follower: $0.14

In the best months, follower growth from paid traffic was 100+ per day.
And the most common cost per follower was $0.07.

Here are a few examples with excellent CPC and the required Conversion Rate to follow:

CPC: $0.01. Spend: $60.10. Followers: 743 from the promoted post.
Visits from ads: 8889.

(743/8889)*100 = 8.35% conversion rate into a follower.

Cost per follower: 60.10/743 = $0.08

CPC: $0.01. Spend: $42.12. Followers: 581 from the promoted post.
Visits from ads: 6223.

(581/6223)*100 = 9.33% conversion rate into a follower.

Cost per follower: 42.12/581 = $0.07

CPC: $0.01. Spend: $26.87. Followers: 430 from the promoted post.
Visits from ads: 4144.

(430/4144)*100 = 10.37% conversion rate into a follower.

Cost per follower: 26.87/581 = $0.06

5. The problem of post moderation

Moderation is the cornerstone of successful launches in this niche. Photos are fairly explicit. Yet some images pass review. That pushed us to study how Instagram’s automated review of images works. In our internal notes, we called this system Machine Sight (MS).

To train such a system, a large dataset is used: examples of ads that were rejected or approved in the past. The model learns patterns and then flags violations automatically.

Beyond machine vision itself, Meta/Facebook uses other algorithms and approaches to moderate ads:

Computer Vision (CV) — computer vision technology to analyse images and video. CV can detect violations of visual rules, such as prohibited imagery or unwanted content.

Bottom line: there are ways to follow rules and still launch the post we need. They work when there aren’t “matching” blocked photos in the system history. We used experience from well-known models to build a plan for Riri’s next photoshoots. A week later, it became important to track posts that failed moderation. Keeping rejected creatives inside the ad account is risky (it can affect account status), so we had to delete the ad.

To avoid losing track of what ran and what didn’t, we built a table. Over time it grew. It became both a forecasting tool and a reconciliation sheet against actual results. It helped us filter out low-performing posts and posts likely to fail moderation before we even tried them in ads.

6. Boosting organic reach

An important part of the work was the account plan: the strategy that supports organic reach growth. Targeted ads make sense when organic dynamics are improving too.

To understand how to raise reach, we first looked at the niche itself and studied many accounts. Collecting data manually is slow and pointless. We used Popsters (a social media analytics tool) and analysed cosplay models. This helped us identify effective patterns (we measured efficiency by reach, engagement, and follower growth). It also gave inspiration for photos and copy. We noted techniques that increased engagement, and kept track of top-3 performers by metrics.

This kind of analysis lets you see trends in the niche. For example: widespread stagnation and subscription patterns, spikes in organic activity, and possible causes. It helps you judge whether your client is uniquely active, or whether the whole niche is in a dip, or whether seasonality is at play.

7. A few unexpected problems

In mid-June we noticed we started losing the auction. Popsters helped us see the pattern. We googled July events and realised that San Diego Comic-Con happens at the end of the month. California was our main state. So we expanded the targeting geography, and that helped.

In August, when we already had 2 working combinations (post + audience that sees it = subscription), we lost one of them. It had generated huge engagement. The photo was provocative. It had run for about a month and everything was fine. Machine review allowed it. Then users started reporting it. We still don’t understand what exact “evil” we did to them: the ads ran to men 21+. Not only did the ad stop delivering, we also got an account restriction. We appealed and removed it quickly.

8. Twitter / X

Despite the beautiful traffic metrics, the model didn’t love the outcome. The reason is simple: Instagram followers, by themselves, don’t generate OnlyFans sales. You need a sales strategy.

We anticipated this, so throughout the work we continued research and marketing practice to propose a practical system. The model believed follower growth would “work” statistically.
There is a grain of truth in that. It works when the model has a clear, proven path that moves a person through a conversion funnel. From the first touch to the first step: going to OnlyFans to explore the platform. Then to repeat touches, where the subscriber becomes convinced that their needs will be met by an OnlyFans subscription.

That touch system wasn’t fully built. In discussions, we identified a clearer channel where conversions into OnlyFans subscribers were already happening: Twitter, now X.

So we tested a platform switch and focused on building a touch system.

Another challenge: the model wasn’t selling explicit pornography. She sold soft-nude photos and/or videos, often via chat, outside a subscription system.
That makes communication strategy twice as important.

JTBD

We searched Reddit for subreddits discussing NSFW content and OnlyFans models.
We found relevant threads and analysed them using Jobs To Be Done — a marketing framework where a product or service is “hired” for a specific job.
Here’s roughly what the analysis looked like:

First, gathering material in the framework

Then breaking down a review using the structure:

The Buyer’s Journey

After that, we build the “Buyer’s Journey” from these reviews.

The path to purchase has 3 stages:
Awareness Stage — the discovery stage.

Consideration Stage — the evaluation stage.

Decision Stage — the decision stage.

We designed this journey for Instagram. For Twitter/X, we adapted the touch system into a sequence of posts with calls-to-action.

Roughly: 4 posts with a hook phrase + photo, then the 5th post is a call to OnlyFans. In the call, the user must send a code word to receive a “signa” (a personalised photo with a written note, common in influencer/creator communities) as a gift via chat.

And to grow the Twitter/X account faster, we added paid follower growth from ads.

Traffic results were excellent too

Here, for example, the best case engagement cost was $0.02.
Almost every second person liked the promoted post. That’s a successful touch.
Catch1, Catch2, etc. are the hook phrases we tested.

And here, for example, we achieved a CPC of $0.05 on USA/Canada — one of the most expensive audiences.
The average CPC was $0.08. We’re confident we could have driven it lower over time.

Model’s feedback

The result was long-term, but closer to the end of the year OnlyFans revenue dropped, just like the year before. So the model paused promotion and put the work on hold.

Results and conclusions

We agree: traffic performance here is genuinely strong. When every second, third, fifth, even eighth person clicks — you don’t see that often in other niches. Demand exists, competition is intense, so the main conclusions are:

1. If a model has a clear, reliable system that converts Twitter/X and/or Instagram audience into OnlyFans subscribers, then yes: follower growth plus traffic can be enough.

2. If there’s uncertainty about conversion from Twitter/X or Instagram into OnlyFans members, then the work shifts to strategy and the model’s personal brand. Add more platforms for communication: Twitch, more Instagram live streams, or try the newer X format of audio rooms (X Spaces; formerly Twitter).

A personal brand can remain with a model as an asset wherever they go. It can carry through inside the same niche or after a full career pivot.
Sasha Grey is an example: she still has a loyal audience, even though she has not produced adult content for a long time.

We’re ready to bring these results to a new model. We can flood it with traffic and help with strategy: Message here.

Credits:

Worked on the project:

Bogdan Zozulya — strategist, marketer, and lead: https://vk.com/the_redbeard (VK is a major Russian social network).

Anastasia Kiseleva — project manager since late November 2023: https://vk.com/stacykiselyova (VK is a major Russian social network).

Polina Mladshikh — traffic manager: https://vk.com/dokersha_li (VK is a major Russian social network).

Rita Pyoryshkina — project manager until late November 2023: https://vk.com/hikaru_snow (VK is a major Russian social network).

To order the service, message us via any of these links:

https://vk.me/bo_target (VK messenger link).

https://vk.me/the_redbeard (VK messenger link).

https://t.me/bo_martian (Telegram link).