# Invidious — Alternative Privacy-First Frontend for YouTube > Invidious lets you watch YouTube without ads, tracking, or a Google account. It proxies video content and strips all tracking — a self-hostable frontend for YouTube that respects your privacy. ## Install Save as a script file and run: # Invidious — Privacy-First YouTube Frontend ## Quick Use ```bash # Use a public instance — no install required # Lists of public instances: # https://docs.invidious.io/instances/ # Examples: yewtu.be, invidious.projectsegfau.lt, vid.puffyan.us # Or self-host with Docker git clone https://github.com/iv-org/invidious cd invidious docker compose up -d # Visit http://localhost:3000 ``` ## Introduction Invidious is the flagship alternative frontend for YouTube. It fetches videos from YouTube, strips all JavaScript tracking and ads, and serves a lightweight HTML interface. Your browser never talks to Google's servers; only the Invidious instance does. With over 19,000 GitHub stars, Invidious is maintained by a volunteer collective (iv-org). Public instances come and go (YouTube's anti-scraping measures are a constant cat-and-mouse), which is why self-hosting for personal or small-group use is the most reliable option. ## What Invidious Does Invidious queries YouTube's internal APIs (the ones the mobile app uses), extracts video URLs + metadata, and re-serves them through its own frontend. It strips tracking, ads, and recommendations-injection, and offers features YouTube doesn't — like downloading videos, subscribing without a Google account, and RSS feeds for channels. ## Architecture Overview ``` Browser -> [Invidious frontend (Crystal)] | | scrapes / calls YouTube's internal APIs v [YouTube] No client-side JS from Google. Videos are proxied through Invidious (which means Invidious bandwidth grows with usage). Features: - RSS feeds per channel - No account subscriptions (cookie-based local storage) - Full account mode: import YT subscriptions, create playlists - Trending, popular, search without ads - Download videos / audio-only - Embedded video without tracking ``` ## Self-Hosting & Configuration ```yaml # docker-compose.yml (excerpt) services: invidious: image: quay.io/invidious/invidious:latest restart: unless-stopped ports: ["3000:3000"] environment: INVIDIOUS_CONFIG: | db: dbname: invidious user: kemal password: kemal host: invidious-db port: 5432 check_tables: true external_port: 443 domain: invidious.example.com https_only: true hmac_key: "GENERATE_A_RANDOM_STRING" statistics_enabled: false popular_enabled: true hsts: true default_user_preferences: dark_mode: auto quality_dash: auto captcha_enabled: false depends_on: [invidious-db] invidious-db: image: postgres:15 environment: POSTGRES_DB: invidious POSTGRES_USER: kemal POSTGRES_PASSWORD: kemal volumes: - postgresdata:/var/lib/postgresql/data ``` ```bash # Add to your mobile browser: pipe-pipe or NewPipe (Android) can use your # Invidious instance as data source for better Android experience ``` ## Key Features - **No ads** — stripped before reaching your browser - **No tracking** — your IP/browser fingerprint never touches Google - **No account needed** — subscribe via cookies or self-hosted account - **RSS feeds** — subscribe to channels in any feed reader - **Download + audio-only** — pull videos without ytdlp on the client - **Dark mode + customization** — clean, fast UI - **Embedded player** — embed videos without YouTube's tracking scripts - **Import/export YT subscriptions** — move your Google subs into Invidious ## Comparison with Similar Tools | Feature | Invidious | Piped | NewPipe (Android) | yt-dlp | FreeTube (desktop) | |---|---|---|---|---|---| | Hosting model | Self + public | Self + public | On-device | CLI | On-device | | Ads | Blocked | Blocked | Blocked | N/A | Blocked | | Audio-only | Yes | Yes | Yes | Yes | Yes | | Feed subscriptions | Yes | Yes | Yes | CLI-based | Yes | | RSS output | Yes | Yes | No | No | No | | Comments | Yes | Yes | Yes | No | Yes | | Best For | Browser + self-host | Browser + self-host | Android phone | Power CLI | Desktop app | ## FAQ **Q: Is using Invidious legal?** A: Grey area. Scraping YouTube technically violates ToS. No one has been prosecuted for using it (and several public instances operate openly), but self-hosting in jurisdictions that honor YouTube ToS strictly could carry risk. For personal use, most users accept the trade-off. **Q: Why do public instances keep going offline?** A: YouTube actively blocks scraping IPs. Public instances have a half-life of months or less. Self-hosting (with residential proxies or rotating IPs) is more reliable for heavy use. **Q: Invidious vs Piped?** A: Similar goals. Piped has a polished React frontend and may hold up better against YouTube blocks. Invidious is older and more configurable. Run both and pick based on which works on your current ISP. **Q: Does it support YouTube Music?** A: Audio playback works for any YouTube video (music or otherwise). For a dedicated music experience, check Hyperpipe (fork of Piped optimized for music). ## Sources - GitHub: https://github.com/iv-org/invidious - Website: https://invidious.io - License: AGPL-3.0 --- Source: https://tokrepo.com/en/workflows/30ea4998-381e-11f1-9bc6-00163e2b0d79 Author: Script Depot