An unofficial portable build of Zen Browser for Windows, Linux, and macOS. Run it from a USB drive, external SSD, or any folder — no installation, no admin rights, no data left behind.
Download the latest portable build from Releases.
| File | Platform | Format |
|---|---|---|
ZenBrowserPortable-windows-x86_64.zip |
🪟 Windows x64 (Intel/AMD) | Standalone ZIP |
ZenBrowserPortable-windows-arm64.zip |
🪟 Windows ARM64 (Snapdragon) | Standalone ZIP |
ZenBrowserPortable-linux-x86_64.tar.gz |
🐧 Linux x64 | Standalone |
ZenBrowserPortable-linux-aarch64.tar.gz |
🐧 Linux ARM64 | Standalone |
ZenBrowserPortable-macos-universal.tar.gz |
🍎 macOS (Intel + Apple Silicon) | Standalone |
ZenBrowserPortable_*.paf.exe |
🪟 Windows x64 | PortableApps.com |
Windows (Standalone):
- Download the
.zip→ Extract → Double-clickzen-portable.exe
Windows (PortableApps.com):
- Download the
.paf.exe→ Double-click → Choose install location → RunZenBrowserPortable.exe - Or install via the PortableApps.com Platform for menu integration
Linux / macOS:
- Download the
.tar.gz→ Extract → Run./zen-portable
# Linux / macOS
tar xzf ZenBrowserPortable-linux-x86_64.tar.gz
cd ZenBrowserPortable
chmod +x zen-portable # should already be executable
./zen-portableAll your data (bookmarks, history, passwords, extensions) is stored inside the Data/ folder. Move the entire ZenBrowserPortable/ folder anywhere and everything comes with it.
ZenBrowserPortable/
├── zen-portable(.exe) ← Launch this!
├── portable.ini ← Portable mode marker
├── README.txt ← Quick reference
├── defaults/ ← Default preferences (Linux/macOS)
│ └── user.js
├── App/ ← Browser engine (do not modify)
│ ├── zen(.exe) ← Windows / Linux
│ └── Zen Browser.app/ ← macOS
└── Data/ ← Your personal data (portable)
├── profile/ ← Bookmarks, history, extensions, settings
├── temp/ ← Temporary files (redirected here)
└── cache/ ← Cache files
| Feature | Details |
|---|---|
| True portability | Profile, temp, and cache all live inside the portable folder |
| Cross-platform | Windows, Linux, and macOS |
| USB / pendrive ready | Drive letter and mount point changes handled automatically |
| Zero footprint | No files left on the host machine |
| No admin required | Runs from any user-writable folder |
| Coexists with installed Zen | Uses --no-remote — won't interfere with an existing installation |
| Auto-updated builds | New portable builds are published automatically when Zen releases a new version |
| PortableApps.com Format | Also available as .paf.exe — integrates with the PortableApps.com Platform |
- Close Zen Browser completely
- Download the latest archive from Releases
- Delete the contents of the
App/folder - Extract the new archive's
App/folder into your existing one - Your
Data/folder (bookmarks, history, etc.) is preserved
Tip: Auto-updates are disabled in portable mode. Check this repo's Releases page for new versions.
The portable launcher applies these preferences via Data/profile/user.js (editable):
- 🚫 Disk cache disabled — uses RAM cache (256 MB) for USB performance
- 🚫 Auto-updates disabled — update manually by replacing
App/ - 🚫 Default browser check disabled — portable apps shouldn't register as default
- 🚫 Telemetry & crash reporter disabled — no data sent
- ✅
zen.portable.mode = true— signals portable mode to Zen
You can change any of these in about:config or by editing Data/profile/user.js.
Windows (Standalone): The launcher (zen-portable.exe) is a small Go program (~2 MB) that resolves its own directory, redirects TEMP/TMP, and launches zen.exe --profile Data/profile --no-remote.
Windows (PAF): The launcher (ZenBrowserPortable.exe) is compiled by the PortableApps.com Launcher. It does the same job — redirects profile, temp, and APPDATA — but integrates with the PortableApps.com Platform menu and follows the PAF spec.
Linux / macOS: The launcher (zen-portable) is a bash script that does the same — finds the zen binary or .app bundle in App/, sets environment variables, and launches with --profile.
No modifications are made to the Zen Browser engine — it's the exact same build from the official releases.
Requirements: Go (Windows only), Python 3, 7-Zip
# Windows: compile the Go launcher
cd build/portable/launcher
go build -ldflags="-s -w -H=windowsgui" -o zen-portable.exe .
# Package (Windows)
python build/portable/package.py \
--installer zen.installer.exe \
--launcher build/portable/launcher/zen-portable.exe \
--assets-dir build/portable/assets \
--output ZenBrowserPortable-windows-x86_64.zip
# Package (Linux)
python build/portable/package.py \
--tarball zen.linux-x86_64.tar.xz \
--shell-launcher build/portable/launcher/zen-portable.sh \
--user-js build/portable/launcher/defaults/user.js \
--assets-dir build/portable/assets \
--output ZenBrowserPortable-linux-x86_64.tar.gz
# Package (macOS — requires 7z for DMG extraction)
python build/portable/package.py \
--dmg zen.macos-universal.dmg \
--shell-launcher build/portable/launcher/zen-portable.sh \
--user-js build/portable/launcher/defaults/user.js \
--assets-dir build/portable/assets \
--output ZenBrowserPortable-macos-universal.tar.gz
# PortableApps.com Format (Windows — requires NSIS, 7z, ImageMagick)
python build/portable/build_paf.py \
--installer zen.installer.exe \
--paf-template build/portable/paf \
--icon configs/branding/release/logo128.png \
--pal-dir /path/to/PortableApps.comLauncher \
--pai-dir /path/to/PortableApps.comInstaller \
--output ZenBrowserPortable_1.0.0.paf.exeOr just push to GitHub — the Portable Build workflow handles everything automatically.
This project is a fork of zen-browser/desktop. The portable build system lives in build/portable/ and does not modify any upstream source code.
- Zen Browser: zen-browser.app
- Upstream repo: zen-browser/desktop