Spotify engineer Pratik Rasam described how Ads AI, the multi-agent platform inside Spotify Ads Manager, now supports live advertising production. Since launch last year, more than 70% of ads use AI tools, with around 20,000 creatives generated for over 7,000 advertisers. The system turns an advertiser description into ad scripts, audience targeting and policy checks. For business, this is a rare production-scale reference for multi-agent design.
How Spotify built Ads AI on Google ADK
The flow starts with natural language from the advertiser, for example a request to reach engineering leaders in major US tech hubs. An LLM gateway running on Vertex AI and Spotify internal GCP infrastructure extracts structured intent such as audience category, geography and campaign goal. That intent goes to a multi-agent orchestration layer built on Google ADK Java. Parallel agents handle separate responsibilities and their combined output produces two objects: the recommended audience and the finished creative.
Three agents were named for the example: an Ad Script Generation Agent, an Ad Guardrail Agent for policy conformance, and an Audience Recommendation Agent currently running in pilot. Safety and orchestration sit in a separate layer rather than inside each agent, which keeps behavior consistent across the experience. Client applications call a single gRPC service that also manages agent sessions. The model and tool platform below provides LLM runtime, plugins and observability for all agents.
The central ownership rule is one agent, one package and one owner. Each agent ships as a Bazel package with dependency controls, a lib-info file defining the owning team and review routing, plus a monitoring-info YAML with dashboards and PagerDuty alerting. Metrics and alerting are therefore in place before agent instructions are written. Dependency injection scaffolding around AgentFactory, Adapter, Service and AgentModule completes the package, while LLM configuration is stored as front matter.
What this means for companies building agents
For adopters, the model separates team-owned agents and tools from a shared platform with metrics generation, traceability and access to the Spotify Ads developer API. Team A, B or C can own different agents and tools while running on shared context and a shared ADK runtime, with the tool loop managed centrally. An additional moderation layer called kutest handles guardrail policy management. Small teams gain a template for parallel work without shared code ownership, while large organizations get compile-time Bazel visibility that blocks unauthorized agent imports.
The boundary principle assigns sentiment, judgment and reasoning to agents, with examples such as resolving audience intent, building an ad brief from signals and identifying sensitive topics. Deterministic controls, domain ownership and tracing-based evaluation were presented as ways to avoid monolithic agent pitfalls. Rasam also cited lessons on drawing agent boundaries, optimizing tool schemas and managing costs. The implication is that agent scope should follow team responsibility, not model capability alone.
Whether this pattern holds will be visible in production metrics from similar deployments, including share of AI-assisted output, cost per generated asset and guardrail failure rates. Spotify already reports real campaigns, real spending and real audiences behind its 20,000 creatives. If other advertising and content platforms publish comparable ownership models and evaluation results, modular multi-agent stacks will become a standard enterprise option.
