garth, noun:  a clearing in the woods. A garden.

Your wallets,
in a quiet garden
of your own.

BitGarth downloads your Bitcoin and Ethereum self-custody transactions into a private encrypted user database, then exports them as plain-text accounting files which your tools, your accountant, and your AI can actually read.

Try the demo Install with Docker No email required for the app.
§ 01

Why BitGarth, in three sentences.

i.

Self-custody, synced.

Point BitGarth at your Bitcoin xpubs and Ethereum addresses. It pulls the transactions, classifies them, and keeps your balances in sync — without ever touching a seed phrase or private key.

ii.

Encrypted where it matters.

Your wallet data, labels, settings, and saved API keys live in your encrypted user database. It opens with your password and only your password.

iii.

Plain text out.

One-click export to hledger and ledger-cli — readable by humans, by spreadsheets, by Git, and by every LLM you'll ever throw at it. Your data, future-proofed.

§ 02

Built to ask you for almost nothing.

No seed phrases. Ever. BitGarth only ever asks for public addresses and xpubs. There is nothing in the database that could move a single satoshi.
No email required for the app. You do not need to tell us who you are to use BitGarth. If a feature needs extra details later, the app should ask only for that feature.
Your password unlocks the database. We cannot unlock it for you. If you forget the password and have no backup or export, you will need to re-add and re-sync your wallets.

The longer story — what we store, what we don't, and where the limits are — lives in the security & privacy notes .

§ 03

Install in one command.

If you have Docker installed, you're a single command away from running BitGarth locally. The image is published to Docker Hub as bitgarth/bitgarth for both amd64 and arm64.

docker run -d 
  -p 8080:8080 
  -v bitgarth-data:/data 
  --name bitgarth 
  bitgarth/bitgarth:latest

Copies as a single line — pastes cleanly into bash, zsh, PowerShell, or cmd.exe.

Then open http://localhost:8080 in your browser. Pick a password, add a wallet, and watch your transactions land in your own little clearing.

Docker image source: hub.docker.com/r/bitgarth/bitgarth.

§ 04

Pricing, honestly drawn.

Free syncs your balances — with unlimited manual custom asset accounts. tiers add transaction-history sync and more synced accounts.

Free
$0forever
 

Local ownership, five balance-only synced accounts, and every export feature in the box.

  • 5 balance-synced accounts
  • Balance-only sync — no transaction history
  • Unlimited unsynced accounts & custom assets
  • hledger & ledger-cli export, fully unlocked
Install & start
Premium
$50/month
or $500 / year

Fifty synced accounts, deep histories up to 100,000 transactions each, plus future advanced automation.

  • 50 synced accounts
  • Full transaction history up to 100,000 / account
  • Unlimited unsynced accounts & custom assets
  • hledger & ledger-cli export, fully unlocked
Try it in the demo

Your data is always yours. If a paid plan expires, your app data stays with your app instance and remains exportable to hledger or ledger-cli. Only new transaction syncs pause.

Pay in your own coin. Bitcoin, Ethereum, stablecoins (USDC, USDT), or Monero. Monero is the strongest payment privacy option among supported assets.

Clear limits. BitGarth helps organize records. It is not tax, legal, financial, accounting, or investment advice.