yoink is an all-in-one media tool. download videos from 1000+ sites, convert between formats, and compress for discord. no ads, no trackers, free and fast, forever.
- download videos and audio from 1000+ sites (youtube, tiktok, twitter, reddit, etc.)
- playlists download entire youtube playlists as a zip
- images download image galleries from supported sites (gallery-dl)
- convert between formats with different codecs
- compress videos to a target file size for discord
- clips download youtube clips with their timestamps
- trim & crop cut videos and change aspect ratios
- transcribe create text transcripts, SRT/ASS subtitles, or burned-in captions
- gifs auto-detect and download as gif from twitter/x
- pwa install as a mobile app, share links directly from your phone
- discord bot —
/yoink,/convert,/compresscommands
- backend — go with chi router, single binary
- frontend — svelte 5 SPA with vite
- discord bot — go with discordgo, separate binary
- tools — yt-dlp for youtube and other supported sites, ffmpeg for processing, gallery-dl for images
- optional services — browser extractor for tiktok/instagram, configurable cobalt instances for instagram, local Whisper or the OpenAI API for transcription
video downloads default to 1080p. yt-dlp selects the best available resolution up to the chosen quality before applying codec preferences. select 4k for a 2160p cap or best for no resolution cap. quality depends on the streams the source makes available, and a preferred codec is not guaranteed. WebM downloads select compatible WebM streams.
the upload and fetched-file limit is 8 GiB, playlists support up to 1000 videos per run, and each client can have 3 active jobs. site support depends on upstream availability, authentication, and access restrictions.
settings and the download queue are saved in browser storage. temporary media is processed on the server and cleaned up automatically. request logs, optional services, HTTPS, and storage encryption depend on the deployment. see the website's privacy page for details.
you can run your own yoink in about 20 minutes. the self-hosting guide walks you through it step by step:
- installing yoink on linux, macOS or windows (WSL)
- routing youtube through mullvad when youtube blocks your server
- youtube cookies and PO tokens, transcription, the tiktok/instagram extractor and the discord bot
- working on the code, the configuration reference and troubleshooting
the short version, if you already have Go 1.24+, Node.js 20+, yt-dlp, ffmpeg and Deno:
git clone https://github.com/coah80/yoink.git
cd yoink
cp .env.example .env
make build
./yoink # open http://localhost:3001powered by:
- yt-dlp — media downloading
- gallery-dl — image downloading
- ffmpeg — video processing
- cobalt — optional instagram download backend, not used for youtube
inspired by: