You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Ajay c2252af575 Move more thumbnail logic to lib 4 days ago
.github Fix oss attribution workflow 2 weeks ago
ci update CI to prettify oss-attribution 3 weeks ago
manifest Remove vendor references 1 week ago
oss-attribution update CI to prettify oss-attribution 3 weeks ago
public Remove chapters payment checks 1 week ago
src Move more thumbnail logic to lib 4 days ago
test Switch headless mode to new due to chrome update 1 month ago
webpack fix paths for windows dev 4 days ago
.editorconfig Revert dependency changes 3 years ago
.eslintrc.json force delimiters to follow semi 6 months ago
.gitignore Save file on test failure 9 months ago Fix typo 2 years ago
LICENSE Revert "Add back header" 2 years ago Add iOS info (#1307) 11 months ago
config.json.example Put chapter option higher up 9 months ago
crowdin.yml Update Crowdin configuration file 3 years ago
jest.config.js revert module conversion 9 months ago
package-lock.json Move more thumbnail logic to lib 4 days ago
package.json Move more thumbnail logic to lib 4 days ago
tsconfig-production.json add noFallThrough, inplicitReturn, update packages 5 months ago
tsconfig.json add noFallThrough, inplicitReturn, update packages 5 months ago

Logo by @munadikieh


Download: Chrome/Chromium | Firefox | Android | Edge | Safari for MacOS and iOS | Website | Stats

3rd-Party Ports: MPV | Kodi | Chromecast | iOS

Badge Badge Badge Badge Badge

SponsorBlock is an open-source crowdsourced browser extension to skip sponsor segments in YouTube videos. Users submit when a sponsor happens from the extension, and the extension automatically skips sponsors it knows about. It also supports skipping other categories, such as intros, outros and reminders to subscribe.

It also supports

Translate: Crowdin

Important Links

See the Wiki for important links.


The backend server code is available here:

To make sure that this project doesn't die, I have made the database publicly downloadable at (License). If you are planning on using the database in another project, please read the API Docs page for more information.

The dataset and API are now being used in some ports as well as a neural network.


You can read the API docs here.


You must have Node.js 16 and npm installed.

  1. Copy the file config.json.example to config.json and adjust configuration as desired.

    • You will need to repeat this step in the future if you get build errors related to CompileConfig. This can happen for example when a new category is added.
  2. Run npm install in the repository to install dependencies.

  3. Run npm run build:dev (for Chrome) or npm run build:dev:firefox (for Firefox) to generate a development version of the extension with source maps.

    • You can also run npm run build (for Chrome) or npm run build:firefox (for Firefox) to generate a production build.
  4. The built extension is now in dist/. You can load this folder directly in Chrome as an unpacked extension, or convert it to a zip file to load it as a temporary extension in Firefox.

Developing with a clean profile and hot reloading

Run npm run dev (for Chrome) or npm run dev:firefox (for Firefox) to run the extension using a clean browser profile with hot reloading. This uses web-ext run.

Known chromium bug: Extension is not loaded properly on first start. Visit chrome://extensions/ and reload the extension.

For Firefox for Android, use npm run dev:firefox-android -- --adb-device <ip-address of the device>. See the Firefox documentation for more information.


The awesome Invidious API was previously used, and the server is now using NewLeaf as a to get video info from YouTube.

Originally forked from YTSponsorSkip, but very little code remains.

Icons made by:


This project is licensed under GNU LGPL v3 or any later version