Player FM analytics limitations and attribution
Open a source-aware analysis with this article as the primary source.
Add us to your Preferred Sources.

Player FM analytics limitations are mainly attribution and definition problems. Player FM documents three user agents for its web, iOS, and Android apps and tells hosts or analytics providers to aggregate matching activity across them. That produces a complete Player FM-attributed row for a given metric, but it does not turn a request into proof of a unique listener, a completed episode, or a heard ad.
The three Player FM user agents
Player FM's official article, Understanding Podcast Analytics on Player FM, names these labels:
- Player FM for the web app
- Player FM iOS for the iOS app
- Player FM Android for the Android app
The article instructs hosting platforms and analytics companies to retrieve matching plays, downloads, or other actions for all three user agents, then sum the counts for each metric. Its worked example keeps plays and downloads as separate totals.
Keep that constraint in your worksheet. Add web downloads to iOS downloads and Android downloads. In another row, add web plays to iOS plays and Android plays. Do not add the play total to the download total, because the labels describe different events.
Player FM analytics limitations by claim
A platform-attributed metric answers a narrow question: which requests or actions did the reporting system associate with Player FM's user-agent labels? Several wider claims need different evidence.
| Claim | What the three-label total supports | What else you need |
|---|---|---|
| Player FM-attributed downloads | Same provider-defined download metric summed across web, iOS, and Android labels | Provider definition, filters, and period |
| Player FM-attributed plays | Same provider-defined play metric summed across the three labels | Provider definition and event scope |
| Unique listeners | No direct conversion from the user-agent total | A documented audience method and deduplication rules |
| Completion | No completion inference from a request label | Client-side playback or completion reporting |
| Ad impressions or heard ads | No automatic ad claim from episode attribution | Campaign method and qualifying delivery definition |
| People reached across devices | No person-level identity from the label alone | A documented cross-device audience method |
Use cautious language in reports. Write "Player FM-attributed downloads reported by [provider]" rather than "people who listened on Player FM." The first statement preserves the observed event and source. The second changes a request into a person and a listen without supporting evidence.
Why user agent is only one input
The IAB Tech Lab Podcast Measurement Guidelines v2.3 describes podcast measurement as analysis of server logs. It says HTTP requests can include IP address, timestamp, status code, bytes served, referrer, user agent, and byte range. The guideline describes user agent as an identifier for the app or service consuming the media and as one input used to determine whether a request is unique.
IAB guidance also calls for filtering requests that should not count, including identified bots and two-byte range checks that do not represent a valid download. It discusses duplicate handling and the limits of IP address plus user agent for audience measurement. A Player FM label therefore helps classify a request, while the provider's wider method determines whether and how that request qualifies.
Our explanation of IAB podcast measurement v2.3 covers the server-log boundary in more detail. Certification, filtering, and user-agent attribution are related, but they are not interchangeable labels.
Build a Player FM attribution worksheet
Export episode-level data from your host or analytics provider with the user-agent or app field included. Then create one row per episode, metric, provider, and reporting window.
| Episode | Metric | Player FM web | Player FM iOS | Player FM Android | Player FM total |
|---|---|---|---|---|---|
| Episode ID | Provider-defined downloads | A | B | C | A + B + C |
| Episode ID | Provider-defined plays | D | E | F | D + E + F |
Use actual episode IDs rather than titles as the join key. Titles can change or repeat. Preserve the original three columns after calculating the total so you can trace a discrepancy back to one label.
Before refreshing the sheet, confirm all rows use the same provider, episode, metric definition, date range, and time zone. If one export uses publication-to-date and another uses a calendar month, align the windows before summing. If a provider changes its parser or methodology, annotate the date and avoid presenting the series as unchanged.
The workflow in how to measure podcast downloads can help you document the request, filter, and comparison window before interpreting movement.
Check the total before sharing it
Run four checks:
- Coverage: Confirm the export contains all three published Player FM labels.
- Metric match: Verify every input row uses the same metric name and provider definition.
- Window match: Align the episode scope, start and end dates, and time zone.
- Reconciliation: Recalculate the total from the preserved web, iOS, and Android rows.
A missing label does not prove that no activity occurred on that app. It means the export did not show that label in the selected scope. Check the raw report, filters, and provider mapping before writing an absence claim.
Keep unique-audience figures in a separate table. The guide to unique listeners explains why deduplication method, window, and source belong with any audience count.
Use the total in a wider analytics review
Player FM attribution can reveal whether one app family contributed more or fewer provider-defined actions during a fixed window. It cannot explain the cause on its own. Check the release schedule and catalog promotion record first, then compare the raw user-agent rows before and after any parser update.
In a sponsor report, place Player FM attribution under distribution or app-source detail. Put campaign delivery under the contracted measurement method. Put completion under a platform that documents client-side consumption. The podcast analytics audit gives each source an owner and decision so these fields stay separate.
FAQ
Apply the same provider, metric, episode scope, and time window to each answer below.
Which Player FM user agents should podcast reports include?
Player FM documents three labels: Player FM for its web app, Player FM iOS, and Player FM Android. Check all three when building a platform-attributed total.
Can I add Player FM plays and downloads together?
No. Sum each metric only across matching user-agent rows, episode scope, and time window. Plays and downloads keep separate definitions and should remain separate series.
Does a Player FM download equal a unique listener?
No. User-agent attribution identifies the app or service associated with a request. Unique-audience measurement needs its own provider method, filters, and deduplication rules.
Want a consistent view of episode delivery across supported podcast apps? Start Podder Analytics and connect a supported host.
FAQ
Which Player FM user agents should podcast reports include?
Player FM documents three labels: Player FM for its web app, Player FM iOS, and Player FM Android. Check all three when building a platform-attributed total.
Can I add Player FM plays and downloads together?
No. Sum each metric only across matching user-agent rows, episode scope, and time window. Plays and downloads keep separate definitions and should remain separate series.
Does a Player FM download equal a unique listener?
No. User-agent attribution identifies the app or service associated with a request. Unique-audience measurement needs its own provider method, filters, and deduplication rules.
See who's actually listening.
Podder gives you audience demographics, per-episode analytics, and chart tracking. The Chartable alternative that goes deeper.
Start free