This document describes the available macros for pixel tracking URLs in the Flightcast podcast hosting platform.
Pixel tracking URLs are hit with HTTP GET requests when a user downloads/streams the part of a file containing an ad.
These pixels are not placed anywhere else.
They are only hit by our backend after the trigger during the stream of the mp3 file.
We support all standard podcast hosting company pixels (Podscribe, Magellan, etc).
As well as DCM/website tracking pixels (1x1 image files).
Please ensure that you are using precisely one of these two, and that no additional fields are required, as this document details the maximum supported macros from Flightcast.
When the pixel url is hit, Flightcast supports dynamic macro replacement at request time.
All support macros are listed below.
Please remove any macros we do not support from your Pixel URL before submitting to Flightcast.
This includes any GDPR_CONSENT_STRING replacements or otherwise - as these are not currently supported.
This list is for advertiser / host-read pixels, not VAST request macros. The same field names are accepted as {name}, %%name%%, and [NAME]. {rss_url} is curly-only on RSS and DAI today. Aliases of the identity set ({showId} = {podcastId}, {contentguid} = {episodeId}, {cachebuster} = {random}, {listenerId} = {hash} on RSS / DAI) are not additional fields.
{variable}| Macro | Replacement | Description |
|---|---|---|
{episodeId} | Episode GUID | Unique identifier for the episode |
{podcastId} | Podcast ID | Unique identifier for the podcast |
{ip} | IP address | Raw IP address of the listener |
{hash} | User hash | Unique IAB-compliant identifier for the listener |
{timestamp} | ISO timestamp | Request time in ISO format (e.g., 2026-01-27T15:30:00.000Z) |
{random} | ULID | Random ULID for cache-busting/deduplication |
{epoch} | Unix timestamp | Unix timestamp in seconds |
{userAgent} | User agent | URL-encoded user agent string |
{ua} | User agent | URL-encoded user agent string (alias for {userAgent}) |
{campaignId} | Campaign ID | Unique identifier for the campaign |
{campaignName} | Campaign name | Campaign name, URL-encoded. Falls back to the campaign id when the name is missing. |
{episodeName} | Episode title | Episode title, URL-encoded. {episodeTitle} is the same field. |
{podcastName} | Podcast title | Podcast title, URL-encoded. {showName} is the same field. |
{rss_url} | RSS URL | Podcast RSS feed URL, URL-encoded. Curly form only on RSS and DAI today. |
{podcastGenre} | Podcast categories | Podcast categories, comma-joined and URL-encoded. {showGenre} is the same field. |
https://tracker.com/pixel?ep={episodeId}&ip={ip}&cb={random}https://attribution.example.com/pixel?podcast={podcastId}&episode={episodeId}&ip={ip}&hash={hash}&ts={epoch}&ua={userAgent}&cb={random}User-Agent, X-Forwarded-For, and X-Device-Ip headers with listener information© 2024 Flightcast. All rights reserved.