Media Analytics Co-Pilot
a plain-language read of this page & where to look next
Video, audio and podcasts: play rate, retention, playback quality, live viewers and podcast downloads — including YouTube and Vimeo embeds.
Media
Media Analytics
Settings
Last 30 days
Viewable impressions
—
Play rate
—
Plays
—
Avg. watched
—
Completion
—
Playback score
—
Media
Click a row for the retention curve| Asset | Viewable | Play rate | Plays | Watched | Completed | Score | Assisted conv. |
|---|---|---|---|---|---|---|---|
| Loading… | |||||||
Media retention
Retention
Rewatched
Skipped
Drop-off
Stalls / rage clicks
0:00
Seeks: jumped from (red) → landed on (green)
Filtered view: the curve is rebuilt from the furthest point each matching play reached, so rewatch, skip and stall detail is not shown.
What is measured
- <video> and <audio> on your own pages, including HLS/DASH players built on them (Video.js, Plyr, hls.js…): everything, automatically.
- YouTube: needs
enablejsapi=1in the embed URL (or switch on “Add enablejsapi=1” in Settings). Useyoutube-nocookie.comto avoid cookies. - Vimeo: measured through Vimeo's player messages, no extra setup.
- Spotify, SoundCloud, Apple Podcasts, Wistia and other iframes: only on screen and clicked into, marked “Limited”.
- Any other player:
gs('media', {id, label, duration, event: 'play'|'pause'|'time'|'end', position}). Chapters:data-gs-chapters="0:00 Intro, 0:42 Demo".
Playback score
—
Startup (median)
—
Startup (slowest 10%)
—
Buffering
—
Error rate
—
Avg. bitrate
—
By browser
By device
By player
By connection
Resolution played (video)
Errors
Lowest playback scores
At least 5 plays · click to openAudio played on your site
Players on your pages · click to open| Episode | Plays | Listen-through | Completed | Background | Sped up | Intro skipped |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Podcast downloads
Listens inside podcast apps cannot be seen by any website tracker; downloads can. Add an episode here and put its tracked URL in your RSS feed's
<enclosure url="…">. GhostStat counts the request and redirects to your file; the file itself never passes through GhostStat. One download per listener per episode per day (a daily-rotating hash; no IP address is stored). Crawlers are counted as requests only.| Episode | Tracked URL → file | Downloads | Requests | |
|---|---|---|---|---|
| Loading… | ||||
Serving the files from your own server and linking them directly? Import its access log instead:
php cron/media-log-import.php --site=<id> --file=access.log (combined format; re-importing the same log gives the same numbers).Live streams
Viewers send a heartbeat every 30 seconds · refreshes every 30 s| Stream | Watching now | Peak | Viewers | Avg. watch | Buffering |
|---|---|---|---|---|---|
| Loading… | |||||
Cookieless: nothing is stored in the visitor's browser, no fingerprinting, no frames or audio captured. Findings are rules over measured numbers, and each one says which.
