Inspiration
Promoting your music in a new city shouldn’t feel like shouting into the void. You’ve seen similar artists blow up in places you haven’t touched yet — so why can’t you?
Espionage was built by an artist, for artists, to answer that exact question. It maps out where your genre peers are already winning, digs into their audience demographics, and helps you clone their marketing playbook — so your next ad campaign, tour stop, or release strategy actually hits.
No guesswork. Just data, insight, and smart moves.
Espionage was born out of that need: a tool to let you piggyback on the shoulders of existing artists that fall under the same blanket as you. What can you learn about a known artist's fanbase, understand their demographics, and then clone that playbook for your own act?
What it does
Espionage is a music marketing intelligence platform that:
Lets you select a reference artist (e.g. radiohead)
Choose a target city or region with a broad query (e.g. London)
Generates a heatmap of the top 10 audience hotspots in that area
Retrieves real demographic and audience affinity data
Sends this data to an AI agent that returns ready-to-deploy ad campaigns for major ad vendors:
Instagram
Facebook
YouTube
Each campaign includes:
Human-readable copy suggestions
Smart audience targeting (age, gender, interest, location)
Recommended daily budget
Suggested ad formats (Reels, Stories, In-Stream, etc.)
Geo-coordinates resolved to neighborhood/city names
In a future iteration, there will be a one-click campaign button that lets you automatically send out all posts with a single click from Espionage.
How we built it
Espionage is powered by:
Spotify API for reference artist metadata
Qloo for reference artist city-specific audience hotspots, affinity models, and demographic data
Leaflet to visualize the interactive map
OpenAI LLM to generate final structured ads and respond in JSON format
The TypeScript backend includes services that:
Cache hotspots and queries
Build a structured prompt for OpenAI’s gpt-4o model
Parse and validate the structured ad campaign JSON
The AI layer ensures campaigns are context-aware, visually coherent, and actionable.
Challenges we ran into
Geographic resolution I expected to be able to make a single call to Qloo to get extra filtering (e.g. location) on demographic data for an entity. For example, I wanted to pull specific demographic and affinity data for an artist in a specific location. But it seems demographic data is scoped to the entity and doesn't support narrowing down to specific locations at this time.
LLM consistency Ensuring structured JSON output that can be parsed without fail. I had to include strict instructions in the prompt like “no markdown wrappers, no commentary” and find a usable temperature.
Demographic normalization User data across sources varies wildly. We built weighted aggregation methods to balance and standardize input before passing it to the AI.
Performance Caching and debouncing location + artist queries to prevent unnecessary LLM hits.
Accomplishments that we're proud of
Built a fully functional plug-and-play ad campaign generator
Created an interface that feels less like a tool and more like a music industry superpower
Connected several parts of the Qloo API together and synced that with an LLM to build a single unit of functionality that doesn’t feel disjointed
As an artist, my friends and I will significantly reduce our misses with ad targeting using this tool
What we learned
OpenAI’s LLMs are powerful but require rigid constraints to behave predictably — specifying output format, behavior, and fallback logic is essential
Artists think in sound and culture, not numbers — wrapping data in human-readable context is the difference between useful and magical
Speed matters — when the entire process can be done in a minute, creative teams actually use the tool mid-session or during tour planning
What's next for Espionage
Multi-city tour planning: Generate ad sets across an entire tour route in one click
Card integration: One-click campaigns are charged directly from a funded card within Espionage. This also solves another problem, as many cards are often rejected by major ad vendors. We make the ad generation and execution process straightforward
Lookalike fan modeling: Upload Spotify/YouTube data and get inferred cultural twins across the globe
One-click campaigns: Push campaigns directly to Meta or Google Ads Manager APIs
Creator-facing reports: Share PDF and web summaries with artists so they understand the “why” behind the ad spend
Slack + Notion integration: Help internal label teams share and coordinate campaigns easily
Log in or sign up for Devpost to join the conversation.