AI Discovery Agent
Viralytics
20 discovery queries daily. 4 chart sources scraped automatically. Runs at 7 AM UTC while you sleep. A&R team reviews qualified leads, not raw data.
The Challenge
Half Dozen's A&R team needed a way to discover independent artists before they blow up. Manual tracking across multiple chart sources was time-consuming and inconsistent. The solution needed to identify artists with viral momentum and present actionable intelligence.
Technical requirements:
- — Scrape Spotify charts (Global Daily, City Pulse playlists)
- — Track chart positions, rank changes, days on chart
- — Filter for independent artists (non-major label)
- — Calculate "Viralytics Score" for discovery prioritization
- — Automatically add qualified artists to Notion for review
System Architecture
Data Flow:
Chart Sources (Spotify, City Pulse)
↓
chart-scraper Worker (Puppeteer)
↓
chart-service Worker (API + Storage)
↓
D1 Database (charts, artists, metrics)
↓
viralytics-workflow (Daily 7 AM UTC)
↓
AI Analysis (OpenAI + Perplexity)
↓
Notion (A&R Review Queue)
Key components:
- ✓ chart-scraper: Browser Rendering API with Puppeteer for scraping protected charts
- ✓ chart-service: API orchestrator that fetches, caches, and stores chart data
- ✓ viralytics-workflow: Daily AI agent that discovers and qualifies artists
AI-Powered Discovery
The viralytics workflow runs 20 SQL queries daily to identify artists with viral potential:
Trending New Entries
New in top 50, last 14 days
Rapid Climbers
8+ position jump in 7 days
Cross-Market Momentum
Charting in 2+ markets
Independent Rising
Non-major label, top 30
Each candidate is scored using the Viralytics Score—a composite metric combining chart velocity, market breadth, and independence status.
Results
4+
Chart sources
Global, Denver, NYC, Austin
Daily
Automated discovery
7 AM UTC workflow
20
Discovery queries
Multi-signal analysis
Production status:
- ✓ Chart scraping operational (4 sources)
- ✓ Daily workflow triggering at 7 AM UTC
- ✓ Notion integration for A&R review queue
- ⏳ Cloudflare D1 migration in progress (from Neon PostgreSQL)
Applying the Canon
Viralytics applies Tufte's data-ink ratio principle: the system maximizes signal (actionable artist discoveries) and minimizes noise (irrelevant chart data).
The 20-query discovery engine embodies Rams' Principle 10 (as little as possible)—each query targets a specific signal. No query exists without justification.
Need AI-Powered Discovery?
We build autonomous agents that surface actionable intelligence from complex data landscapes.
Start a Conversation