I promote my music on Spotify through Meta ads. Money goes out. Streams, saves, and playlist adds come in.
But are those things actually connected, or am I paying for what the algorithm would do anyway?
I vibe coded a tool to find out!
The Meta Ads to Spotify Analyzer is a single-page, browser-based calculator with no login required. Your data never leaves the page.
Try it here, or use the version baked into this post.
I’ve completely overhauled it, and this post, since I first published the tool. Instead of entering data manually, you simply drop in CSV files from Ads Manager and Spotify for Artists.
The tool re-runs the whole analysis on 300 random shufflings of your conversions and only claims an effect if random data can’t match it.
See for yourself! If you need help locating the proper files, click on “Where do I get these files?” in the import box.
Or if you just want to see what it can do, click the Load Example button below the table.
The minute you click Load Example (or Run Analysis on your own files), you’ll get a plain-English verdict. For the example (a real 44-day campaign plus a couple of baseline days), it comes back with:
✅ Streams: strong evidence your ads are driving this (chance matched this result in fewer than 1% of 300 trials)
🟡 Intent (saves + playlist adds): suggestive, but not conclusive yet (chance matched this result in about 10% of 300 trials)
Then you get a pretty graph and lots of numbers before the part that actually matters: what’s attributable to the ads.
In this example, each conversion is generating about 8 streams, for a cost of $0.03 per stream.
Keep in mind that this example is catalog-wide. For any individual song, Spotify for Artists only lets you download daily streams. Saves, listeners, and playlist adds are for all of your songs.
So if you include a CSV for an individual song, the streams conclusions will be tighter and ultimately more honest.
I realize it sounds ridiculous to pay that much when Spotify pays us back a paltry $0.003 in royalties, but that doesn’t factor in future streams or algorithmic impact. Good luck measuring that!
When it comes to streams, there are loads of confounding variables:
- organic activity
- The Algorithm™
- Marquee and Showcase campaigns
- playlist adds and removals
- proximity to release day
- weekdays vs weekends
It’s so messy, we’re lucky to see any signal at all in the noise, and some of these can fake a correlation as easily as hide one.
Intent paints a cleaner picture. A save or playlist add is a deliberate, same-day reaction to your ad.
In my experience, saves are the best way to judge the success of an ad campaign. If you don’t see an obvious relationship between conversions and saves, something is probably wrong, and this tool will help you spot it.
Alrighty then, that’s a lot of data talk and my brain hurts.
If you’ve got a few spare minutes, try it for yourself and share your experience in the comments!







