YouTube SponsorBlock Segments Scraper avatar

YouTube SponsorBlock Segments Scraper

Pricing

from $0.49 / 1,000 results

Go to Apify Store
YouTube SponsorBlock Segments Scraper

YouTube SponsorBlock Segments Scraper

Get community-reported SponsorBlock segments for any YouTube video: sponsor reads, intros, outros, self-promos, filler, highlights, and more, with start/end times and votes.

Pricing

from $0.49 / 1,000 results

Rating

0.0

(0)

Developer

Dataspryva

Dataspryva

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Security

Limited permissions

Share

Export crowdsourced SponsorBlock timestamps for any batch of YouTube videos. Every row is one segment: what it is, when it starts and ends, how the community voted, who submitted it when that is public, and the YouTube title, channel, and thumbnail that make the segment easy to join onto other datasets.

No YouTube login, SponsorBlock account, API key, browser, or proxy is needed. The actor reads the public SponsorBlock database and YouTube's public metadata endpoints.

Two ways to read the data

  • Visible segments (default) — exactly what SponsorBlock returns to its extension: the segments viewers are currently offered, with the video duration attached to each segment.
  • All submissions — the full search database, with views and submission time. Hidden, shadow-hidden, and disputed submissions are included only when Include hidden submissions is enabled. This mode is for research and moderation work, not for deciding what to skip.

Both modes accept the same category, action, vote, and per-video cap filters.

What you get

One dataset row per segment. Status rows explain videos with no matching segments, invalid inputs, or a failed lookup. Optional summary rows give per-video and whole-run totals.

FieldExampleMeaning
recordTypesegmentsegment, status, videoSummary, or runSummary
videoId7wtfhZwyrcc11-character YouTube ID
videoUrlhttps://www.youtube.com/watch?v=7wtfhZwyrccCanonical watch URL
segmentId1561e818...SponsorBlock segment UUID
category / categoryNamesponsor / SponsorCategory key and readable label
actionType / actionNameskip / SkipSkip, mute, full video, highlight/POI, or chapter
startTime / endTime0 / 31.861Seconds from the start of the video
durationSeconds31.861Segment length in seconds
videoDurationSeconds361Video duration reported by SponsorBlock or YouTube
votes0Community vote score
lockedfalseWhether the segment is locked from edits
views213Reported views on the submission (when available)
timeSubmitted2021-06-07T01:55:42+00:00Submission time (when available)
hidden / shadowHiddenfalseModeration or shadowban state (all-submissions mode)
descriptionPre-LyricsCommunity note, when one exists
submitterId62fc5a8d...Public SponsorBlock submitter ID
submitterNameblabdudePublic username, when the submitter set one
submitterSegmentCount23402Public submitter segment count
submitterReputation27Public submitter reputation score
submitterMinutesSaved13669789.992Public minutes-saved total
submitterViewCount41955231Public submitter view total
submitterViptruePublic VIP flag
videoTitleImagine Dragons - Believer...YouTube title from oEmbed/player
channelName / channelIdImagineDragonsVEVO / UCpx_k...Channel name and ID
channelUrlhttps://www.youtube.com/@ImagineDragonsVEVOChannel URL
thumbnailUrlhttps://i.ytimg.com/...Public thumbnail
youtubeDurationSeconds217Duration reported by YouTube
videoViewCount3072396590YouTube view count
publishedAt2017-03-07YouTube publish date
isLivefalseLive-stream flag
statusno_segmentsStatus rows only
error...Status rows only
scrapedAt2026-11-05T...Capture timestamp

Every empty value is omitted at every depth. There are no null placeholders, empty strings, empty lists, or empty objects in the dataset.

Status rows

statusMeaning
no_segmentsThe lookup succeeded but no segment matched the category, action, vote, hidden, or cap filters.
invalid_videoThe input was not a YouTube video URL or ID.
failedSponsorBlock did not return a usable response after retries.

Summary rows

Set Include summary rows to add:

  • videoSummary per processed video: segmentCount, totalSegmentSeconds, averageSegmentSeconds, longestSegmentSeconds, category and action counts, and the YouTube metadata.
  • runSummary once per run: requested/processed/with-segments/without-segments/failed counts, total segment count and seconds, category and action totals.

Input

FieldTypeDefaultDescription
videoUrlsstring array, required—YouTube URLs or 11-character IDs. Watch, youtu.be, Shorts, live, embed, music, and no-cookie links are accepted. Add as many as you need.
categoriesmulti-selectallSponsor, Unpaid/Self Promotion, Interaction Reminder, Intro, Outro, Preview/Recap, Hook, Non-Music Section, Filler Tangent, Highlight, Exclusive Access, Chapter.
actionTypesmulti-selectallSkip, Mute, Full video, Highlight/POI, Chapter.
sourceselectvisibleVisible segments or all submissions.
minVotesinteger0-2 includes every submission, 0 drops downvoted ones, higher values keep only well-confirmed segments.
includeHiddenSegmentsbooleanfalseInclude hidden/shadow-hidden submissions in all-submissions mode.
includeDescriptionsbooleantrueInclude community notes.
includeSubmitterInfobooleantrueAdd public submitter name and stats, cached per submitter.
includeYouTubeMetadatabooleantrueAdd YouTube title, channel, thumbnail, duration, views, publish date, and live flag.
includeSummarybooleanfalseAdd per-video and run summary rows.
maxSegmentsPerVideointeger0Keep at most N segments per video after filtering and sorting. 0 means no limit.
concurrencyinteger4Videos processed at once, from 1 to 10.

Legacy input keys from older tasks are still honored in code: videoIds, videoIDs, videos, urls, videoId, videoUrl, category, actionType, actions, and includeDescription. A comma- or newline-separated videoUrls string also works. They are intentionally not shown in the input form.

Example: batch with filters

{
"videoUrls": [
"https://www.youtube.com/watch?v=9bZkp7q19f0",
"https://youtu.be/kJQP7kiw5Fk",
"dQw4w9WgXcQ"
],
"categories": ["sponsor", "selfpromo", "intro", "outro"],
"actionTypes": ["skip"],
"minVotes": 0,
"includeYouTubeMetadata": true,
"includeSummary": true,
"maxSegmentsPerVideo": 25,
"concurrency": 4
}

Example: full research mode

{
"videoUrls": ["kJQP7kiw5Fk"],
"source": "all",
"minVotes": -2,
"includeHiddenSegments": true,
"includeSubmitterInfo": true,
"includeYouTubeMetadata": true
}

Use cases

  • Player overlays and cut lists — exact start/end times and the recommended action.
  • Sponsor-load analytics — sponsor seconds as a share of total runtime, by video or channel.
  • Dataset enrichment — stable segment UUIDs plus video/channel/thumbnail join keys.
  • Transcript cleanup — remove sponsor, intro, outro, and self-promo spans before analysis.
  • Community research — compare submissions, votes, lock state, and public submitter stats.

FAQ

What is SponsorBlock?

SponsorBlock is a public crowdsourced database of timestamped YouTube segments such as sponsor reads, intros, outros, and self-promotions.

Do I need cookies, an API key, or a proxy?

No. Every request uses public endpoints. The actor never asks for credentials and never configures a proxy.

Why does one video return no rows?

SponsorBlock is crowdsourced. A video may have no submissions, or every submission may be filtered out by the selected categories, actions, votes, hidden setting, or per-video cap. A no_segments status row tells you which case occurred.

What is the difference between visible segments and all submissions?

Visible segments are what SponsorBlock would currently act on. All submissions also includes hidden, shadow-hidden, and disputed records, which is useful for research but should not be used to build a skip list.

Why do some rows have no thumbnail or title?

Age-restricted, private, or deleted videos can reject the public YouTube metadata endpoints. Segments are still returned; the unavailable metadata fields are simply omitted.

Why is submitterName sometimes missing?

SponsorBlock only exposes a public username when the submitter set one and the public lookup succeeds. Otherwise the row keeps the public submitterId and any aggregate stats that were available.

Why do some segments have zero duration or start and end at zero?

full and some chapter/poi submissions use a single point or the whole video. The actor preserves exactly what SponsorBlock stores and does not invent times.

Can I get the global SponsorBlock leaderboard?

No. The public getTopUsers endpoint is disabled and returns 404. The actor does not expose a mode that cannot return real data.

Does this download videos, captions, or promo codes?

No. It reads timestamps and public metadata only. Promo codes are not part of the SponsorBlock database and are out of scope.

Is this affiliated with YouTube or SponsorBlock?

No. It is an independent reader of public APIs and is not endorsed by either project.

Limits

  • SponsorBlock coverage is community-driven and varies by video and channel.
  • Votes, views, hidden state, and lock state are a snapshot at fetch time.
  • source=all is a separate database view, not a moderation tool; it never submits, votes, or edits anything.
  • getTopUsers is disabled upstream, and mute submissions may be absent for a given video.
  • The actor keeps every existing output field and adds new ones; old tasks continue to work.