All posts
Podcast AttributionAgenciesCampaign Optimisation

How Agencies Manage Podcast Ad Attribution Across 20+ Campaigns Without Losing Their Minds

Niels SchnadtApril 2, 20266 min read

The attribution problem that is annoying for a single brand becomes operationally critical for an agency. When you are managing podcast campaigns for ten clients, each with two to five active placements, the number of moving parts multiplies fast. Promo codes need to be unique not just per campaign but per client. Attribution windows need to be right for each brand's product type. Reporting needs to be client-friendly, not analyst-friendly.

Most agencies at this scale are running a combination of shared spreadsheets, manual promo code reconciliation from client Shopify dashboards, and periodic screenshots from podcast platforms. It works until it does not, and it stops working somewhere around campaign number five.

The Attribution Problem at Agency Scale

At the single-brand level, podcast attribution requires careful setup but manageable maintenance. You set up your tracking script once, create campaigns as you launch them, and review reports monthly.

At agency scale, the problem is not technical complexity. It is operational complexity multiplied across clients:

  • Every client has a different website, different e-commerce platform, different tracking script installation
  • Every campaign needs a unique promo code and vanity URL that does not conflict across the agency's client base
  • Reporting timelines, attribution windows, and success metrics differ by client
  • Client-facing reports need to look clean and professional, not like internal data exports
  • Billing is often performance-based, which means attribution accuracy directly affects agency revenue

When one of these breaks, it is often not discovered immediately. A misconfigured conversion event on a client's site might go unnoticed for three weeks, at which point you have lost a full attribution cycle. At scale, these failures happen more frequently because there are more systems to maintain.

Why One Spreadsheet Breaks at Campaign Five

The early-stage agency attribution approach typically looks like this: maintain a master spreadsheet with promo codes per campaign per client, pull redemption data from each client's Shopify monthly, enter the numbers manually, and calculate ROAS in a formula column.

This works at two or three clients. By campaign five or six, the cracks appear:

  • Promo codes are reused across clients by accident, corrupting attribution
  • Shopify data is pulled at different times, making period comparisons unreliable
  • Campaign costs are stored inconsistently (some inclusive of fees, some exclusive), making ROAS calculations incomparable across clients
  • When a client's conversion event breaks, you find out when the client asks why their numbers look low, not proactively

By campaign ten, the spreadsheet approach is consuming several hours per week in manual data work and still producing attribution reports that clients question. The agency is simultaneously over-resourced on data wrangling and under-resourced on actual analysis.

The Infrastructure Agencies Need

The right infrastructure for agency-scale podcast attribution has three components: workspace isolation, naming conventions, and automated reconciliation.

Workspace-Level Attribution

Each client should operate in a completely isolated attribution environment. Their tracking script, campaigns, conversions, and reports should be entirely separate from other clients. This eliminates the cross-contamination risk: a promo code that accidentally gets reused, or a conversion that appears in the wrong client's report.

In Castlytics, each workspace is a completely isolated environment. An agency can manage multiple workspaces under a single login, switching between client views without any data leakage between them. Client-level isolation also makes it easier to grant clients read-only access to their own reports without exposing other clients' data.

Standardised Naming Conventions

Across an agency managing 20+ campaigns, inconsistent naming creates reporting problems that compound over time. If one client's campaigns are named The Tim Dillon Show - Feb 2026 and another's are named TDS_FEB26_V2, comparing campaign performance across the portfolio becomes difficult.

Establish a naming convention before you onboard your first client and enforce it strictly:

  • Campaign names: [Client] | [Show Name] | [Month] [Year] (e.g., Gymshark | The Run Experience | March 2026)
  • Promo codes: [CLIENT CODE][SHOW CODE][DISCOUNT] (e.g., GYMRUNX15)
  • Vanity paths: /[client-slug]/[show-slug] (e.g., /gymshark/runxp)

This convention makes reports sortable, searchable, and comparable across your entire portfolio.

Automated Reconciliation

The most time-consuming part of manual attribution management is reconciling promo code data against conversion tracking data. This should not be a manual process.

If your attribution platform pulls promo code redemptions automatically via Shopify or WooCommerce integrations, this reconciliation happens without human involvement. Discrepancies (promo codes used that did not fire a conversion event, for example) surface as alerts rather than as month-end surprises.

How to Present Attribution Data to Multiple Clients

Client reporting at agency scale has a specific requirement that internal reporting does not: it needs to be defensible without the report author being in the room.

Clients reviewing podcast attribution reports often ask the same questions: why do my Shopify numbers not match this, how was this calculated, and why is this campaign's ROAS higher than I expected?

Structure your client reports to pre-empt these questions:

Lead with a summary that any stakeholder can read. Total podcast ad spend, total attributed revenue, ROAS for the period, and three bullet points on what changed since last period. If a client reads nothing else, they should be able to understand the headline from this page.

Show the signal breakdown for each campaign. Pie charts or small bar charts showing what proportion of conversions came from tracking links, vanity path visits, promo codes, and surveys. This demonstrates that your attribution is multi-dimensional and not just a count of link clicks.

Include a reconciliation note. A brief paragraph explaining how the attribution numbers relate to total Shopify orders: "Podcast attribution accounts for X% of total orders this period. Orders attributed to podcast campaigns are a subset of total orders, not an addition to them."

Flag anomalies proactively. If a campaign showed lower than expected performance, note the likely reason (episode delayed, host changed the script, short attribution window) before the client asks.

What Agencies Get Wrong About Podcast Attribution

Sharing promo codes across campaigns. This is so common and so damaging that it deserves repetition. Every placement, every client, every episode needs its own unique code. No exceptions.

Not reconciling script installations on client handoff. When you onboard a new client, verify the tracking script installation personally before running the first campaign. Do not trust that the client's developer "added it." Test it.

Using the same attribution window for all clients. A DTC supplement brand and a B2B SaaS company have fundamentally different sales cycles. One needs a 14-day window; the other needs a 60-day window. Apply the appropriate window per client, not a blanket default.

Reporting only on campaigns that worked. A complete attribution report shows all campaigns, including underperformers. Presenting only the winners erodes trust over time. Show everything and explain the context for low-performing campaigns.

Start managing podcast attribution at agency scale properly. Castlytics supports multi-workspace management, Shopify integration, and exportable client-ready reports. Set up your first client workspace in under 20 minutes.

Related reading: Castlytics for Agencies | Podcast Attribution Checklist

NS
Niels SchnadtLinkedIn

I help tech companies and scale-ups build the paid acquisition, tracking, and growth infrastructure needed to scale profitably, with full visibility into what's working.

Ready to track your podcast ad ROI?

Castlytics gives you per-campaign attribution, real-time ROI, and listener journey analytics — free to get started.

Start free — no credit card