How Automated Meta Campaigns for Music Work: Release and Tour Ads on Autopilot
An automated Meta campaign for music has three parts: a builder that creates the campaign the same way every time, tracking that measures real song clicks per ad, and an hourly optimizer that pauses losing ads, keeps at least one ad alive per ad set, and emails you what it did. song.so runs this for release campaigns and for tour campaigns.
By the song.so team
The three parts of the loop
Manual ad management fails for music in a predictable way. A release lasts a few weeks, creatives burn out in days, and nobody checks the account every hour. The automation closes that gap with a loop: build the campaign in a fixed structure, attribute every click to the ad that caused it, judge each ad against a cost target, and act on the result without waiting for you.
| Part | What it does |
|---|---|
| Builder | Creates the campaign, ad sets, creatives and ads in a fixed structure, with the smartlink and tracking tags on every ad |
| Attribution | Counts song.so click-outs per ad through the utm_content tag, instead of trusting Meta reported results |
| Optimizer | Runs every hour, pauses ads that miss the target, protects the last working ad, and sends email reports |
Release campaigns and tour campaigns
A release campaign promotes one song through one smartlink. The builder creates a sales objective campaign optimized on the ViewContent event, ad sets for broad, genre and similar-artist audiences, and one ad per creative with a Listen Now button and a link to the song.so smartlink. The structure is explained in release campaign structure: broad, genre and artists ad sets.
A tour campaign works per city. Each ad set is matched to a tour date, the ticket link carries the city, and the optimizer also knows about the show itself: a sold out or past date pauses its ads automatically. The details are in tour ad campaigns with per-city ad sets.
Why attribution comes first
Meta reports a result when its pixel sees an event, and that number moves with browser limits, ad blockers and bot traffic. The optimizer instead divides spend by the song.so click-outs attributed to each ad, using utm_content set to the ad id. That figure is the real cost per result, or RCPR. It does not depend on what Meta thinks happened, and it is computed per ad, never averaged up to the ad set or the campaign. The reasoning is in real cost per result for music ads.
Clean attribution also needs clean traffic. Server-side events, fingerprinting and bot filtering keep fake clicks out of the numbers the optimizer reads. See server-side tracking for Spotify promotions and invisible conversions caused by ATT and ad blockers.
What the hourly optimizer does
Every hour the optimizer reads insights for each registered campaign. An ad is only judged once it has at least 300 lifetime impressions and at least 150 impressions today. It is paused only when both its lifetime RCPR and its RCPR today are above the target. A campaign always keeps a working ad: the last good ad of an ad set is not paused before a qualified replacement is active. An ad that has run for at least three days with enough impressions can also be paused for frequency when a better ad can take over. Every rule is explained in automation rules explained.
After a campaign has run for a day, ad set selection looks at whole ad sets. When every active ad set has enough data, at most two winning ad sets stay active and the others are paused. Nothing is ever deleted. Paused ads and ad sets keep their history and can be turned back on.
You stay in control
Ads and ad sets with the word force in their name are never touched by the automation, so you can run a creative manually inside an automated campaign. The thresholds, the frequency limit and the email schedule are yours to change in the Automation rules window, and each campaign has its own automation switch. Reports can arrive every hour, every 6 or 12 hours, once a day, or not at all.
Only campaigns registered in song.so are covered. A campaign built directly in Meta Ads Manager is not optimized until it is imported. Campaigns created through the song.so builder are registered from the start.
Where this fits in your workflow
The usual sequence is simple. Create your videos, build the campaign, activate it, and let the loop run. When the optimizer warns you about frequency, add more variations. The bulk workflow in bulk ad creative variations and the import step in from creative generator to live campaign cover how to keep the supply of creatives high enough for the automation to work with.
FAQ
Does song.so optimize campaigns I built in Meta Ads Manager?
Only after they are imported into song.so. The optimizer covers campaigns registered in song.so, which includes every campaign created through the song.so builder.
How often does the optimizer run?
Every hour. Email reports can be sent hourly, every 6 or 12 hours, once a day, or turned off.
Does the automation delete ads?
No. Ads and ad sets are paused, never deleted, so the performance history stays available and you can reactivate them.
Can I keep an ad out of the automation?
Yes. Any ad or ad set with the word force in its name is ignored by the automation and is never paused, reactivated or swapped.
What is the difference between release and tour campaigns?
A release campaign promotes one song to a smartlink with broad, genre and artist ad sets. A tour campaign has one ad set per city, linked to a tour date, and pauses itself when the show is sold out or over.