The fight to ban fur farming in Poland lasted for years. Previous efforts—investigations, publications, lead generation campaigns—built the foundation. This case study focuses on the moment when the ban was practically within reach. It was a cinch.
We faced:
⌛ time pressure
📢 changing rules for the META advertising platform
and the knowledge that it could take a month... or six months, or... 🤷♀️
The first decision wasn't about targeting or creative. It was about the calendar. I cleared it.
A large campaign isn't a "side-by" project. It's a central project. If it's going to be the core of the entire effort, it needs full attention.
I established a dedicated team:
a person who coordinated the creative, created the copy, and "ordered" graphics and videos, the person who created graphics according to the instructions and the person who created the video according to the instructions .
💡 A large campaign isn't about "making ads." It's about being able to react quickly, test, and scale without bottlenecks.
A dedicated team is essential for such action. Especially when you need to react quickly while running multiple ads simultaneously.
We didn't know how long the campaign would last.
Therefore, two things were crucial:
1. Time/Speed and breadth of reach - we didn't know whether the campaign would last a month or half a year, but we needed quick results
2. Flexible scalability - we needed activities that would allow us to achieve large reach very quickly
Cost per conversion was important, but not crucial. The key was whether we could scale up at any time dynamically and generate results quickly without losing control.
💡 Before designing a campaign, always consider what you expect from it (beyond results). For example, will it be a quick, short-term effort or a long-term campaign with an optimal budget spread over time? Are you willing to sacrifice one metric for another?
The philosophy of our action was based on:
speed,
very wide reach,
increasing the number of leads,
high scalability.
The premise was simple:
💡 Reach (the group to which META will show your ads) changes with every campaign variable. Not just the target audience.
Also:
campaign objective,
creative context,
format (graphics vs. video).
Therefore, the structure was developed consciously.
🚀 First division: campaign goal
We separated (at the campaign level):
conversion (clicking a button),
custom conversion (visiting a thank you page) - classified as a sale, which forced me to use only the Advantage+ group and give more control to the algorithm,
campaigns in the political category (while it was available). *Separating it helped avoid later technical errors.
For the algorithm, these are different events. For us, they are different doors to different people.
🚀🚀 Second division: creations - differentiation increases reach
We separated (at the ad set level):
audience groups (cold according to our settings, lookalike, Advantage+),
communication contexts (urgency, social proof, animal suffering, animal help, impact on local communities, empowerment of the recipient),
formats (graphics separately, video separately).
Why so many?
Because differentiation increases reach.
In META different people respond to different triggers. Different people will respond to content focused on animal suffering, while others will respond to creatives showcasing social proof. Someone who clicks on a video will often not click on an image, and vice versa.
We didn't want a single effective creative in the campaign; we wanted multiple effective conversion sources.
🔥 Separating content formats and contexts allows to:
increase reach,
maintain low frequency,
avoid a situation where one "best" creative limits overall reach.
Video is often the most effective creative in an ad set – META often focuses on showcasing video without presenting any other content. Separating video allows to avoid this situation.
Structure effect:
1 campaign (button sign up for action)
22 ad sets
128 creations
2nd campaign (thank you page visit):
8 ad sets
36 ads
3rd campaign (thank you page visit):
4 sets
24 ads
4th campaign - political (button sign up for action)
11 sets
80 ads
🕰️ Using historical data
Before preparing new materials, I analyzed the advertising panel to find the most effective creations from the previous year. The materials surrounding the publication of the investigation into one of the largest mink farmers performed particularly well—both the graphics and the short video. These were directly transferred into the new campaign.
At the very beginning, I had a hard reality check. A moment came that definitely changed my approach to reporting.
In the advertising dashboard, the results looked good. In the external tool—a disaster. Only 1.5% of new leads. Normally, it was around 20-30%. It was hard to believe, but the numbers don't lie.
I usually keep a cool head, but I started to panic. I was burning a lot of money!
So I turned off conversion campaigns because they were "more expensive," even though I knew they showed a more realistic result than clicking a button.
I didn't know:
❓ which campaigns were bringing new contacts, and which were still reaching people we already had in our database,
❓ where to scale,
❓ where to cut.
I was working blindly, afraid that this campaign was a harbinger of how META campaigns would always work. After a month, it turned out the culprit was... an error in the system counting new emails in the database. Not the Meta. Not the targeting. Not the structure. The system.
What went wrong?
a data filtering error in the tool that saved META contacts,
no team member with full access and control over the external tool,
my panic.
⭐ Lesson for you
Keep a cool head.
Don't make hasty decisions based on unverified data.
Make sure the team has someone responsible for a tool that truly values results.
Push for data verification—it's in the best interest of the entire team.
Time passed. We published a new investigation. This time showing puppies suffering in a fur farm. We launched more campaigns.
A campaign based on the context of puppy suffering:
27 ad sets
98 ads
Urgency-based campaign (photos with puppies):
9 sets
27 ads
An additional video-only campaign:
12 creatives divided by genre (new + archived investigations).
Meta, meanwhile, ban socio-political content in ads. Some campaigns were disabled. This didn't have a significant impact on the overall structure—we knew this would happen.
This is another lesson: it's worth separating topics, so that any changes or blockages won't have a significant impact on your campaigns and your work.
Total:
7 campaigns
95 ad sets
661 ad creatives
🔥 Don't think that every ad creative is different. Each ad set with the selected context contained the same creatives, but they targeted different target groups and different goals.
Results:
Time: August 24th - October 10
Average frequency for all campaigns: 6.39
Highest frequency of a single set: 2.39
This means that even at a large scale and high budget, people weren't seeing the same message over and over again. If they saw more, they saw different versions.
This is a huge advantage for a campaign.
Advertising budget spent (from August 24th to October 6th): EUR 30 634.32
Expenses after VAT: EUR 37 091.22
Signatures and leads:
Number of signatures from ads: 23 409 *Data from Analytics indicates that 70% of signatures during this period came from advertising campaigns.
Number of new leads from ads (assuming this assumption): 11 379
Cost per signature (incl. VAT): EUR 1.59
Cost per new lead (incl. VAT): EUR 3.26
Cost per active lead (incl. VAT): EUR 4.25
Benchmark (our previous lead generation campaign):
Estimated cost per new lead: 3.74 EUR
graphics:
fight for a ban on fur farming
fight for a ban on fur farming
No animal deserves this.
Stop it!
78 000 people have already joined the fight for animals killed for their fur
👑 best performing graphic
join the animal allies
Video (vertical and square):
Join the fight to ban fur farming
👑 best performing video
Your help is his only hope
Stop it now
Imagine how much she suffers
1. Set a starting budget
Enough to get started quickly and scale quickly, but not so large that you overshoot your costs.
Our budget: 20–31 EUR per set.
2. Scale slowly
+20% of your budget with good results.
This way, the algorithm doesn't get confused, and the cost per conversion doesn't skyrocket.
3. Don't obsessively analyze individual ads creations
Look at the ad set level.
If the average cost is acceptable, don't disable it.
4. Only disable what actually breaks the average.
As long as the average across the entire structure is satisfactory, the campaign is working.
Knowing the date of the bill's vote in the Sejm, we launched a wrtite-to website enabling emails to be sent to MPs. The website's advertising campaign should have launched immediately, but the META Pixel was blocked by cookies. I delayed the campaign launch.
💡 Today I know: I should have launched even without the data. It was worth the risk!
Campaign structure
Two groups:
1. People who follow Otwarte Klatki, people who interacted with Otwarte Klatki' content, people in our mailing database,
excluding people who visited the write-to page and signed up at CzasnaZakaz.pl, and people who have already completed the task.
2. High-intent people — who previously visited the campaign pages: people who signed up on CzasnaZakaz.pl, people who visited CzasnaZakaz.pl, people who were on the write-to page, excluding people who have already completed the task on the write-to page.
About 3 days:
54 confirmed actions
Approximately 324 emails sent (on average, each person sent 6 messages)
Cost: 157,72 EUR
Estimated cost per action confirmation: 2.92 EUR
Estimated cost per message: 0.50 EUR
Benchmark:
AETP (Slovenia):
cost of 1 confirmed mssg from ads: 3.56 EUR
cost per action-taker was 11.50 EUR in all ads (around 10 EUR in best version)
graphics:
Demand a ban on fur farming
Write this message now
Animals don't have time to postpone decisions
Send this message NOW
Don't miss your chance to help animals
Send this message NOW
In the write-to czasdzialania.pl campaign, the most effective group (63%) was created based on people who:
visited the website czasdzialania.pl
were on the ThankYou page czasnazakaz.pl
signed up for action (clicked the button) on czasnazakaz.pl
(excluding people who confirmed the action on write-to)
Automation - a wasted opportunity
Less than a day before the vote, we published a reel with influencers and a CTA: "Leave a comment and we'll send you a link to make animal farming history."
from a single day generated 26 action-takers, indicating potential for this channel (compared to 52 from bio and 80 from stories over the entire campaign).
Campaign structure
Two campaigns:
Goal: Contacts/Registration
Remarketing (followers, people who interacted, people who visited pages related to the anti-fur campaign and the main Otwarte Klatki campaign, people who signed up for the campaign, people from the email database)
Exclusion: People who confirmed the campaign on the "List to the President" website
Goal: Conversion/Sales
Remarketing: people who have interacted with Otwarte Klatkis materials in any way - they have visited pages, are followers, reacted to content or are on the mailing list.
It lasted 17 days., excluding the group used in the contact campaign
Running time: 15 - 21 days
Total expenses: 480.33 EUR
44 confirmed actions (uploaded a photo of the letter to the website)
Action cost: 10,91 EUR
graphics:
Diversity and rounded texts were important here, because META blocked political content
Send a letter and appeal for a ban on fur farming in Poland!
Don't scroll.
I know you care.
Appeal to the President to sign a ban on fur farming.
*The photo shows a famous actor who recorded a video asking the President for his signature.
Call for signatures to ban fur farming
Send a letter to the president
Call for signatures to ban fur farming
Send a letter to the president
In the write-to listydoprezydenta.pl campaign, a more effective (56%) campaign was a sales campaign aimed at people who: Remarketing - people who have interacted with Otwarte Klatki materials in any way - they have visited pages, are followers, reacted to content or are on the mailing list.
It lasted 17 days.
You might not want to read all this, especially since there aren't many images.
The META will take away more and more control over your audience. Therefore, take advantage of all the other differentiation options you still have:
🔥 different goals,
🔥 different formats,
🔥 different contexts,
🔥 a well-thought-out structure.
🌟 Don't fight the algorithm. Design your campaign so it has room to work.
Author: Sandra Działdowska, external communication coordinator at Anima International Poland
Want more details? Have questions, suggestions, or feedback?
Contact: sandra.dzialdowska@otwarteklatki.pl