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 Ramachandran c396d1690d
New Crowdin updates (#825)
5 days ago
.github Add github link 6 days ago
manifest Increase version number 5 days ago
oss-attribution feat(lint): add default .eslintrc.js 8 months ago
public New Crowdin updates (#825) 5 days ago
src Remove unlisted experiment 5 days ago
webpack Prompt to accept permission if video info fails to load 3 months ago
.editorconfig Added .editorconfig 12 months ago
.eslintrc.js refactor(lint): replace self-equals-this code with arrow functions 7 months ago
.gitignore added .DS_Store to not commit by mistake 2 months ago Fix typo 3 months ago
LICENSE Try to get GitHub to recognise license 2 months ago Add Safari link to readme 1 month ago
config.json.example Add preview category 1 month ago
crowdin.yml Update Crowdin configuration file 1 year ago
jest.config.js Started conversion to TypeScript. 2 years ago
package-lock.json Update more packages 3 weeks ago
package.json Update more packages 3 weeks ago
tsconfig.json Fix errors breaking ts compilation 4 weeks ago

Logo by @munadikieh


Download: Chrome/Chromium | Firefox | Android | Edge | Safari for MacOS | 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.


Rename config.json.example to config.json and adjust configuration as desired.

There are also other build scripts available. Install npm, then run npm install in the repository to install dependencies.

Run npm run build to generate a Chrome extension.

Use npm run build:firefox to generate a Firefox extension.

The result is in dist. This can be loaded as an unpacked extension

Developing with a clean profile

Run npm run dev to run the extension using a clean browser profile with hot reloading. Use npm run dev:firefox for Firefox. 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.

Attribution Generation

If you contribute and add a dependency, update the attribution file using the following steps:

Make sure the attribution generator is installed: npm i -g oss-attribution-generator

mv ./oss-attribution/attribution.txt ./public/oss-attribution/attribution.txt


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