The result first
We gave CreatorMatch one list of 12 well-known podcasts and two brands, Liquid Death and Patagonia, using the live Qloo API on 24 Oct 2026.
- The popularity sort and the Qloo sort agreed on 0 of the top 3 for both brands. The most popular show on the list, Crime Junkie, ranked 11th of 11 by affinity to Liquid Death and 10th of 11 for Patagonia.
- Liquid Death: KILL TONY is 10th of 11 by popularity but 2nd by affinity (0.903). Of the 199 movies, TV shows, artists and brands Liquid Death's audience over-indexes on, 18 also appear for KILL TONY's audience, led by I Think You Should Leave with Tim Robinson (0.947 for Liquid Death's audience, 0.945 for KILL TONY's), Party Down and The Righteous Gemstones. Crime Junkie's audience shares 6.
- Patagonia: The Rich Roll Podcast is 9th by popularity and 1st by affinity (0.973). The two audiences share 40 of Patagonia's top 198 tastes, led by The Dawn Wall, Free Solo and Globe Trekker. Crime Junkie shares none.
- An error it caught: "Hot Ones" resolved in Qloo to a different podcast ("Two Hot Takes"). CreatorMatch flagged it for review and did not score it, instead of ranking the wrong show.
Inspiration
Creator budgets follow reach. A marketer sorts by followers and sends the same pitch to the top twenty. Reach doesn't buy, though. The creators whose audiences already love the same shows, films, music and brands as the brand's own customers are often lower on that list. That overlap is cultural, not demographic, which is exactly what Qloo's taste graph measures.
Who it's for
Brand and agency marketers running creator campaigns. They need a shortlist they can defend in a review: "why this creator?" must have an answer with evidence.
What it does
Each step is a Qloo call, and the app shows them in an agent trace.
- Resolve the brand with Qloo Search (
/search,urn:entity:brand), with a name check. - Resolve each creator with Qloo Search (
urn:entity:podcast). If Qloo's top match is a different name, the creator is flagged and not scored. - Score the list with one Insights call:
/v2/insights,filter.type=urn:entity:podcast,signal.interests.entities=<brand>,filter.results.entities=<the list>. This returns each creator's affinity to the brand's audience and its popularity. - Baseline: the same list sorted by Qloo popularity, a stand-in for reach.
- Explain the non-obvious pick: for the shortlisted creator that jumped furthest over the popularity sort, CreatorMatch pulls the top movies, TV shows, artists and brands for the brand's audience and for the creator's audience, and shows what they share. It does the same for the most popular creator that dropped out.
- Discover: smaller podcasts outside the list with high affinity to the brand (
filter.popularity.max=0.9). - Brief draft: built only from those fields and labeled DRAFT. Nothing is sent. The marketer approves any outreach.
Why it only works with Qloo
Every number on the screen comes from Qloo: the affinity that ranks the list, the popularity it is compared with, and the shared tastes that explain the pick. Without Qloo, the only sort available is popularity, which is the problem we started with.
How we built it
- Python standard library for the agent.
qloo.pyis the client (Search and Insights v2,X-Api-Key, hackathon base URL, retry on rate limits, private in-memory cache).agent.pyruns the seven steps.app.pyis a Gradio UI for local use. - Deterministic and auditable. The ranking is Qloo affinity, nothing else. Popularity is shown and never scored.
- Demo: https://igoreduardoai.github.io/creatormatch/ runs live (re-checked on 26 Oct 2026: same rankings as the 24 Oct runs): each Compare calls a serverless JSON endpoint on Vercel (
api/run.py) that keeps the Qloo key server-side, with per-visitor and daily caps. The recorded runs of 24 Oct stay on the page, labeled with their date, as a fallback. - Tests: 7/7 on synthetic fixtures with no key: ranking by affinity, the popularity baseline, flagging an ambiguous name, evidence for the pick, discovery excluding the user's list, the human-review brief, and an unknown brand returning nothing.
Results (live Qloo run, 24 Oct 2026)
- 2 brands × 12 creators: 11 of 12 resolved and scored, 1 flagged (the same name both times).
- Top-3 overlap between the popularity sort and the Qloo sort: 0 of 3 for both brands.
- 27 Qloo calls per run, about 9.5 s end to end with 3 calls in parallel.
Design: what the marketer sees
One screen built around "why these creators?": the headline overlap number, the two shortlists side by side with popularity and affinity bars, the "why this pick" card with the shared tastes and their affinities for both audiences, a review box for names Qloo couldn't match, the brand's top tastes, smaller creators to consider, the brief draft and the agent trace with the exact Qloo parameters.
Challenges
- Entity resolution. A wrong match looks like a confident answer. Exact-name checks plus a "needs review" state fixed it.
- Explaining a pick. Two audiences rarely share the same artists, so we compare four entity types (movies, TV, artists, brands). For Patagonia and Rich Roll the overlap is mostly films.
- Rate limits. Bursting the API returned HTTP 429; we cap parallel calls at 3 and back off.
Limitations
- Creators are represented by their podcast entities in Qloo. Instagram/TikTok creators without a Qloo entity can't be scored yet.
- Qloo popularity stands in for reach; we don't have follower counts.
- Affinity scores for well-known shows sit in a narrow band (about 0.69 to 0.97 here), so the ranks matter more than the decimals.
- No customers yet. This is a prototype.
What's next
- CSV import of a brand's creator list.
- More creator entity types (
urn:entity:person). - Post-campaign lift data to check whether affinity predicts results.
Business
Who pays: brand and agency marketing teams, per seat or per campaign. The value is fewer wasted creator fees and a shortlist they can explain.
Video note: the narration is a synthetic text-to-speech voice (en-US-AndrewNeural); the screen recording is the live page on 26 Oct 2026.
Built With
- github
- gradio
- javascript
- python
- qloo
- qloo-insights-api
- vercel
Log in or sign up for Devpost to join the conversation.