A phone and tablet YouTube client for Android.
SmarterTube is not a patched YouTube app and not a wrapper — it is a native Android phone/tablet UI built on SmartTube's existing YouTube client engine.
It is a fork of SmartTube by yuliskov. It adds a native portrait UI — drawer navigation, search, channel pages, settings, sign-in — on top of SmartTube's YouTube client engine, which is merged from upstream unchanged on every release. Upstream SmartTube is TV-only by design; this fork exists for phones and tablets.
Beta. A native phone & tablet UI — Home, Search, Channel, Channel Uploads, Settings, sign-in, and playback — built on SmartTube's YouTube engine. Core flows work; some upstream features aren't surfaced in the phone UI yet, and landscape/tablet layouts are still being audited. Unlike app-modifiers, these are real native Android screens, not a repackaged YouTube APK.
Earlier
31.xx-mobile-1.xbuilds were published as full1.xreleases too early. SmarterTube is now reset to a beta line with a clearer version scheme — see Versioning & releases.
SmarterTube is an unofficial fork of yuliskov/SmartTube. The playback/client engine, ad blocking, SponsorBlock, Return YouTube Dislike and DeArrow integration — all the under-the-hood behaviour — come from upstream SmartTube, unchanged. This fork's job is to provide a native phone/tablet interface while keeping the upstream structure intact, so non-UI updates can be merged in regularly.
SmarterTube is currently beta. It uses its own product version and records the upstream SmartTube base separately:
v0.4.0-beta.1+st31.93
| |
| +-- upstream SmartTube base (metadata only)
+-- SmarterTube product version (semver + release channel)
- The SmarterTube app version (
v0.4.0-beta.1) is tracked separately from the upstream SmartTube base (st31.93). - Earlier
31.xx-mobile-1.xreleases mixed those two numbers and were marked as full1.xreleases prematurely. They are superseded by this beta reset and are treated as legacy by the updater. - Public beta/stable releases normally track SmartTube stable. Upstream SmartTube beta/head is used only for SmarterTube alpha builds or emergency YouTube-breaking fixes (called out in the release notes).
Full policy: docs/VERSIONING.md · docs/RELEASE_PROCESS.md · docs/UPDATER_COMPATIBILITY.md. Per-release status lives in docs/FEATURE_MATRIX.md and docs/KNOWN_ISSUES.md.
Upstream SmartTube is built for Android TV — a leanback, 10-foot, D-pad interface. Phones and tablets need touch-native navigation instead. SmarterTube adds that UI while preserving upstream compatibility, so engine and feature updates keep flowing in from SmartTube.
| Project | Approach |
|---|---|
| SmartTube (upstream) | Android TV / leanback (10-foot) UI |
| SmarterTube (this fork) | Native phone/tablet touch UI on SmartTube's engine |
| App-patching tools | Patch or modify the official YouTube app itself |
Pick the APK for your device:
| ABI | Who needs it |
|---|---|
arm64-v8a |
Most Android phones made after 2016 |
armeabi-v7a |
Older 32-bit devices |
x86 |
Emulators |
universal |
Everything — larger file |
SmarterTube installs as com.codesculptor.smartertube and is co-installable with the upstream SmartTube TV build (app.smarttube). They do not conflict.
Upgrading from a build before this rename? Versions up to
v0.4.2-beta.8shipped under the old packageapp.smarttube.mobile. The new id is a separate app, so it installs alongside the old one rather than upgrading it — uninstall the old SmarterTube after installing this one. Settings and signed-in accounts do not carry over and need to be set up again (one-time).
SmarterTube is not on any app store. Obtainium installs and auto-updates apps straight from their GitHub Releases — no store and no central repository involved:
- Install Obtainium (itself sideloaded from its own GitHub Releases).
- Add App → paste
https://github.com/CodeSculptor/SmarterTube. - Obtainium tracks each new release automatically; choose the
arm64-v8aasset (oruniversal) when prompted.
This is the easiest way to stay current.
SmarterTube runs its own F-Droid repository — the same APKs as GitHub Releases, signed with the same key, so installs upgrade in place. It is a self-hosted repo (not the official F-Droid index): you add it once in the F-Droid client and get auto-updates.
-
Install F-Droid (or a compatible client such as Droid-ify).
-
Settings → Repositories → Add this URL (fingerprint included so the client verifies it):
https://codesculptor.github.io/SmarterTube/fdroid/repo?fingerprint=C7AE86B0A3291B5D7396411BE185C60B298C9D25012172DDFC859B25B540A46B -
Refresh, search for SmarterTube, and install. Updates then arrive through F-Droid automatically.
The repo serves SmarterTube's own builds only; it is not affiliated with the official F-Droid repository or with upstream SmartTube.
Official builds are published only on this GitHub Releases page (and the SmarterTube F-Droid repo above) unless another source is explicitly linked here.
Release APKs are named SmarterTube-<version>-st<base>-<arch>.apk (e.g. SmarterTube-v0.4.0-beta.1-st31.93-arm64-v8a.apk).
Every APK on the Releases page carries a SHA-256 digest, shown by GitHub next to the asset. After downloading, compare it against the file on your device:
# Linux/macOS
sha256sum SmarterTube-*.apk
# Windows (PowerShell)
Get-FileHash SmarterTube-*.apk -Algorithm SHA256If the hash matches the one GitHub shows for that asset, the file is intact.
- Portrait home screen with drawer navigation (Home, Shorts, Kids, Sports, LIVE, Gaming, News, Music, Channels, Subscriptions, History, Playlists, My videos)
- Search with suggestions and results grid, plus voice search
- Channel pages and channel uploads
- Portrait settings screen
- Sign in / sign out — OAuth device-code flow via in-app browser tab. Switch between multiple accounts with one tap on the toolbar avatar (long-press for account management), or from Settings
- About screen (drawer footer)
- Playback: landscape for regular videos, portrait for Shorts
- SponsorBlock integration
- Return YouTube Dislike
- DeArrow
- Adjustable playback speed
- Up to 8K / 60fps / HDR
- No Google Play Services required
- No ads
SmarterTube is a beta release. A few realities are worth knowing before you install:
- Not all upstream features are surfaced yet — the phone UI covers the core journey (Home, Search, Channel, Settings, sign-in, playback); some upstream options remain reachable only through the settings screens, and a few aren't wired into the phone UI at all.
- Upstream / YouTube breakage — YouTube changes its private APIs without warning, which can break playback at any time. Fixes depend on upstream SmartTube's cadence, then a re-merge here.
- Sideload only — not on any app store. Install the APK yourself from Releases, or use Obtainium to install and auto-update directly from GitHub.
- No guarantees — this is an independent fork with no affiliation to Google/YouTube or to upstream SmartTube's author.
Specific gaps:
- TV / leanback interface — install upstream SmartTube for Android TV boxes and sticks.
- Official F-Droid / IzzyOnDroid index — not listed there; instead use GitHub Releases, Obtainium, or SmarterTube's own F-Droid repo.
- Casting / Chromecast — not currently exposed in the phone UI.
Requires JDK 17 and Android SDK.
# Debug
./gradlew :smarttubetv:assembleStmobileDebug
# Release (needs keystore.properties + smartertube-release.jks at repo root)
./gradlew :smarttubetv:assembleStmobileReleaseOutput APKs land in smarttubetv/build/outputs/apk/stmobile/.
All phone-specific code lives under smarttubetv/src/stmobile/ — no changes to src/main (TV code) except bug fixes that benefit both targets, which are submitted upstream.
The YouTube client engine (MediaServiceCore, ExoPlayer, InnerTube API code) is upstream's work and is merged from yuliskov/SmartTube on every release. Bug fixes that apply to both the TV and phone targets are submitted upstream rather than kept here — see open PRs for current patches. (Code layout is described under Building.)
Licensed under MIT, same as upstream.
See PRIVACY.md.



