Weekly curator targeting driven by recorded taste.
The system is built on one idea: taste can be recorded, and recorded taste can drive targeting.
It started as a spreadsheet. Every curator's adds, passes, and feedback was entered by hand, and hundreds of pitch emails were personalized one at a time until mail merge made real segments possible. That spreadsheet is now two databases. Each curator has one record, with their playlists rolling up underneath it. Campaigns and playlists share one genre ontology. Every week the system matches live campaigns to curators, dedupes against every prior pitch and existing placement, holds each curator to at most one pitch a week no matter how many campaigns are live, and compiles a draft target list with its reasoning attached.
I still review that list, and the ontology is limited on purpose. The one read it leaves out is whether a track reads commercial or underground, the call that sends two same-genre tracks to different playlists. I could keep adding qualitative tags forever, and a trained ear is cheaper than that data architecture will ever be. So the human step sits where the judgment actually lives, and I can override any match.
Using campaign and curator records to assemble a weekly pitch list for review.Two backstops recover what the restraint gives up. Reporting feeds missing genre tags back into the database whenever a playlist turns out to play something it wasn't mapped for. And every pitch links a playlist of all current campaigns, so a curator can always find the track I didn't send.
Pitching people music they don't want is how they stop opening your emails. Staying valuable to curators is the whole business, and this system is how that restraint scales. What once took twelve hours per campaign now takes two.