Self-hosted Bitcoin portfolio tracker - that's it.
Track your Bitcoin investments privately on your own PC. Import transactions from exchanges or add them manually. Multi-user support with admin controls. Your data never leaves your server, period.
Special thanks to @dennysubke for helping bring BTC Tracker to Umbrel!
Install BTC Tracker with one click on your Umbrel home server
- Multi-user setup - First user becomes admin, can create accounts for others
- Import from exchanges - Kraken, Binance, Coinbase, Strike (auto-detects CSV format)
- Real-time tracking - Live Bitcoin prices and portfolio value
- Charts and analytics - Interactive price charts with your transaction history
- Complete privacy - Everything runs on your server, no external data sharing
- Multi-currency - Track in USD, EUR, GBP, PLN, or add custom currencies
Main portfolio dashboard with real-time Bitcoin tracking
With Docker (recommended):
git clone https://github.com/wilqq-the/BTC-Tracker.git
cd BTC-Tracker
cp docker.env.example .env
# Edit .env and add NEXTAUTH_SECRET
docker-compose up -dLocal development:
npm install
cp .env.example .env
# Add NEXTAUTH_SECRET to .env
npm exec prisma db push
npm run devOpen http://localhost:3000 and register the first user (becomes admin automatically).
- First user = automatic admin
- Admin panel in Settings tab (admin users only)
- Create users with email/password
- Each user sees only their own transactions and portfolio
- No data mixing between users
- Create/delete user accounts
- Activate/deactivate users
- View system stats (user count, total transactions)
- Cannot see other users' financial data (privacy protection)
- Export CSV from your exchange (Kraken, Binance, Coinbase, Strike)
- Go to Transactions tab > Import
- Drop the CSV file - format detected automatically
- Review and import
Supports most major exchanges. If yours isn't supported, open an issue with example file.
- Frontend: Next.js, React, TypeScript
- Backend: Next.js API routes, Prisma ORM
- Database: SQLite (single file, easy backups)
- Charts: TradingView Lightweight Charts
- Deployment: Docker
npm run dev # Start dev server
npm run build # Build for production
npm test # Run tests
npm exec prisma studio # Database GUIExisting portfolio trackers either:
- Send your data to third parties
- Don't support multiple users
- Have terrible import systems
- Cost money for basic features
- Require xpub or zpub wallet address
This gives you complete control over your Bitcoin tracking data.
Found a bug? Want a feature? Open an issue.
Want to add support for another exchange? Check PARSER_DEVELOPMENT_GUIDE.md.
MIT - do what you want with it.
Your Bitcoin data belongs to you, not someone else's.