YouTube Most Replayed Scraper
Pricing
from $1.40 / 1,000 replay heatmaps
YouTube Most Replayed Scraper
Get complete Most Replayed heatmaps from public YouTube videos when a graph is available. Find ranked moments with playback links, plus chapter titles and caption excerpts when available.
Pricing
from $1.40 / 1,000 replay heatmaps
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
1
Total users
1
Monthly active users
22 days ago
Last modified
Categories
Share
📺 Find the moments viewers replay on YouTube
YouTube Most Replayed Scraper is for creators, marketers, and researchers who want to study which parts of public videos viewers replay. Submit video URLs or IDs to get complete replay heatmaps, ranked highlights, and links that open those moments. Available chapters and caption excerpts help you see what happens at each highlight without reviewing the whole video first.
- Read replay data for a list of public videos with YouTube Most Replayed Scraper.
- Bring replay data into your own code with YouTube Most Replayed API.
- Study the full replay curve with YouTube Heatmap Scraper.
- Review ranked moments with YouTube Highlights Extractor.
- Find the times of source replay labels with YouTube Most Replayed Timestamps.
📊 Replay curves, highlights, and video context
Each saved row holds one video with a successfully read Most Replayed graph. You get the full timed heatmap, YouTube's own replay labels, and ranked moments with playback links. Highlights use source labels and strong heatmap peaks to pick distinct moments rather than focus only on the opening.
Video title and channel details are included. Duration, publish date, views, comments, likes, chapters, and caption excerpts are included when available. Chapter start times let you find the chapter for a highlight: use the last chapter that starts at or before the moment, up to the next chapter.
Intensity runs from 0 to 1 within each video. It is a relative score, not a replay count. You cannot use it to compare absolute replay volume across videos.
▶️ Run replay analysis from video links
- Add public YouTube video URLs or video IDs.
- Choose how many highlights you want per video.
- Set a preferred caption language, or leave it blank.
- Start the run and open the dataset to review or export the results.
YouTube does not show a Most Replayed graph for every video. Private or sign-in-only videos are outside this Actor's scope. A video without a usable graph does not produce a replay row. Check the run log for unavailable videos or read failures. Missing chapters or captions do not prevent a replay row from being saved.
⚙️ Input
Input fields
| Field | Type | What it does |
|---|---|---|
videos | array of strings | Required. Public YouTube watch, shortened, Shorts, or live-video URLs, or video IDs. Each video needs an available Most Replayed graph. |
highlightsPerVideo | integer | Number of ranked moments to return per video. Default: 5. Minimum: 1. Fewer may be available. The complete heatmap is included whatever count you choose. There is no fixed upper bound in the schema. |
captionLanguage | string | Preferred caption language code, such as en or es. If missing or unavailable, an available language is used and named in the row. Captions are not translated. |
This is the public input from a successful default-input run of the current beta build:
{"videos": ["https://www.youtube.com/watch?v=jNQXAC9IVRw"],"highlightsPerVideo": 5,"captionLanguage": "en"}
🧾 Output
The results output link opens the replay dataset for viewing and export. Each dataset row has the shape below. Optional fields may be absent when YouTube does not provide them.
Run output
| Field | Type | What it does |
|---|---|---|
results | string | Link to the dataset of video replay rows. |
Video replay row
| Field | Type | What it does |
|---|---|---|
videoId | string | YouTube video ID. Use it to join other video data. |
title | string | Video title from YouTube. |
channel | object | Channel credited for the video. |
channel.name | string | Channel name. |
channel.id | string | Channel ID, when available. |
durationSeconds | number | Video length in seconds, when available. |
publishedAt | string | Source publish date, when available. |
viewCount | integer | Video view count, when available. |
commentCount | integer | Comment count, when available. |
likeCount | integer | Like count, when available. |
heatmap | array of objects | Complete timed Most Replayed graph. |
heatmap[].startSeconds | number | Segment start time in seconds. |
heatmap[].durationSeconds | number | Segment length in seconds. |
heatmap[].intensity | number | Relative replay intensity from 0 to 1 within this video. |
replayLabels | array of objects | YouTube's Most Replayed labels. Empty if no labels are provided. |
replayLabels[].text | string | Source label text. |
replayLabels[].startSeconds | number | Start of the labeled range in seconds. |
replayLabels[].endSeconds | number | End of the labeled range in seconds. |
replayLabels[].labelSeconds | number | Time where YouTube places the label. |
highlights | array of objects | Distinct replay moments in ranked order, up to your chosen count. |
highlights[].startSeconds | number | Highlight start time in seconds. |
highlights[].endSeconds | number | Highlight end time in seconds. |
highlights[].intensity | number | Relative replay intensity from 0 to 1 within this video. |
highlights[].playbackUrl | string | YouTube link that opens the highlighted moment. |
highlights[].caption | object | Caption excerpt, when available. |
highlights[].caption.text | string | Text spoken during the highlight, in the source language. |
highlights[].caption.languageCode | string | Language code of the captions used. |
highlights[].caption.isAutoGenerated | boolean | Whether YouTube marks the captions as auto-generated, when available. |
chapters | array of objects | Available chapters. Empty if unavailable. |
chapters[].title | string | Source chapter title. |
chapters[].startSeconds | number | Chapter start time in seconds. |
This genuine row from a successful current-beta run is shortened. The string "..." marks omitted heatmap segments, highlights, and chapters. It shows an available caption language used when the requested language was unavailable.
{"videoId": "aircAruvnKk","title": "But what is a neural network? | Deep learning chapter 1","channel": {"name": "3Blue1Brown","id": "UCYO_jab_esuFRV4b17AJtAw"},"durationSeconds": 1120,"publishedAt": "2017-10-05","viewCount": 24607980,"commentCount": 9351,"likeCount": 564030,"heatmap": [{"startSeconds": 0,"durationSeconds": 11.2,"intensity": 0.3526030651035607},"..."],"replayLabels": [{"text": "Most replayed","startSeconds": 504,"endSeconds": 582.4,"labelSeconds": 515.2},{"text": "Most replayed","startSeconds": 616,"endSeconds": 660.8,"labelSeconds": 627.2}],"highlights": [{"startSeconds": 548.8,"endSeconds": 560,"intensity": 1,"playbackUrl": "https://www.youtube.com/watch?v=aircAruvnKk&t=548s","caption": {"text": "ما سنفعله هو تعيين وزن لكل رابط بين خليّتنا في الطبقة الثانية و جميع الخلايا في الطبقة الأولى. هذه الأوزان هي مجرّد أرقام. ثمّ تأخذ جميع تفعيلات الطبقة الأولى و تجمعها حسب وزن","languageCode": "ar","isAutoGenerated": false}},"..."],"chapters": [{"title": "Introduction example","startSeconds": 0},{"title": "Series preview","startSeconds": 67},{"title": "What are neurons?","startSeconds": 162},{"title": "Introducing layers","startSeconds": 215},{"title": "Why layers?","startSeconds": 331},{"title": "Edge detection example","startSeconds": 518},"..."]}
💳 Pricing
This Actor uses pay-per-event pricing. Replay heatmap covers one video saved with its complete replay heatmap, plus available highlights and context. Check the Pricing tab for the rate for your plan.
Failed, unavailable, duplicate, and no-heatmap outcomes do not trigger this event.
🔌 Integrations
Read replay rows through the Apify API or export the dataset as JSON, CSV, or a spreadsheet. Use video IDs to join other video data in your own workflow. Playback links open the highlighted moments on YouTube.
❓ FAQ
Why did a video return no replay row?
YouTube may not expose a Most Replayed graph for that video, or the video may be unavailable or unreadable. Those outcomes are different. Check the run log for details. A public video is not guaranteed to have a replay graph.
What if my preferred caption language is missing?
An available language is used and reported in languageCode. Leave captionLanguage blank if you have no preference. Captions are not translated. Available uploaded and auto-generated captions can be used.
Why are there fewer highlights than I requested?
There may not be enough distinct moments. highlightsPerVideo controls the highlight count, not the heatmap: the full available graph is still returned.
What happens if I submit the same video in different URL forms?
The first eligible occurrence is saved. Later copies of the same video are ignored. The saved row does not collect evidence from later submitted values.
Does an intensity of 1 mean the video has more replays than another video?
No. Intensity is relative within each video. A value of 1 marks its replay peak, not an absolute replay count or a score you can compare across videos.
Can this search for videos or make clips?
No. Submit the videos you want to analyze. The Actor does not search keywords, crawl channels or playlists, download videos, or make clips. It returns replay data and playback links.
Can I use it in a GitHub project through an API?
You can call the Actor through the Apify API and read its dataset in your own code, including code in a GitHub project. This is a hosted Actor; no GitHub package or source repository is needed to run it.
Does it return a full transcript?
No. It returns available caption excerpts at highlighted moments. Use a transcript Actor if you need captions for the full video.
📝 Changelog
v0.0 (02-10-2026)
- Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Related Actors
- Use YouTube Transcript API to get full available captions and timed transcript segments for videos you analyze.
- Use YouTube Channel Scraper to find recent video references from known channels before replay analysis.
- Use YouTube Trending Videos Scraper to find ranked public videos from regional category pages and charts.
- Use YouTube Description Extractor to add full descriptions, links, hashtags, and mentions to your video research.
- Use YouTube Tags Extractor to add available hidden video tags for content and SEO research.
Made with ❤️ by Maxime Dupré