rotki is a free, open source finance & accounting project written in Python and released under AGPL-3.0. It has 4,027 GitHub stars, 759 forks and 395 open issues, and was last pushed 4 hours ago. On this registry it ranks #14 of 34 tracked projects in Finance & Accounting, with 5 head-to-head comparisons available. It gained 5 stars over the last 3 tracked days.

What is rotki?

What it is

rotki is an open-source, self-hosted portfolio tracking, analytics, accounting, and management application written in Python and released under the AGPL-3.0 license. It lives in the cryptocurrency and personal finance ecosystem, with topics covering bitcoin, ethereum, blockchain, cryptocurrency exchanges, cryptocurrency portfolio tracking, accounting, analytics, and management systems. The project is distributed through GitHub releases and a Docker image, and it is categorized as business software and finance accounting.

The project addresses the problem of users needing to track crypto and financial holdings without surrendering sensitive data to closed-source cloud services. rotki keeps user data encrypted and stored locally, giving users a self-hosted alternative to SaaS portfolio trackers while still providing portfolio overview, historical visualization, transaction decoding, and profit and loss reporting. The README describes rotki as a privacy-first tool and positions it as a self-sovereign alternative to cloud-based tracking services.

Key capabilities

  • rotki tracks balances across multiple platforms, blockchains, and exchanges, including bitcoin, ethereum, and other cryptocurrency assets.
  • rotki provides graphical insights through historical data visualization for reviewing portfolio changes over time.
  • rotki decodes blockchain transactions and exchange events into readable breakdowns of account history.
  • rotki generates profit and loss reports using customizable accounting settings for detailed financial analysis.
  • rotki allows users to personalize the interface, main currency, language, and other data settings.
  • rotki supports local encrypted storage as part of its privacy-focused, self-hosted model.
  • rotki offers a Pro Version and an integrations page for advanced features beyond the open-source core.

Who uses it and how

  • Individual cryptocurrency holders use rotki to consolidate balances from exchanges, blockchains, and other platforms into one local portfolio view.
  • Users who need accounting analysis use rotki to decode transaction history and produce profit and loss reports.
  • Privacy-conscious users deploy rotki on Windows, macOS, or Linux to avoid sending sensitive financial data to cloud-based tracking services.
  • Developers and self-hosters build rotki from source or use Docker to run the application in their own environment.
  • Users with advanced needs evaluate the Pro Version and integrations page while keeping the base application self-hosted.

Getting started

rotki can be installed on Windows, macOS, and Linux through pre-packaged binaries, with Docker also listed as a requirement and a Docker image available at rotki/rotki. Advanced users can build rotki from source using Node.js, npm, Python 3.14, and uv, then configure settings and import addresses according to the documentation.

When to use it — and when not to

rotki is suitable for users who want a self-hosted, privacy-focused alternative to closed-source SaaS portfolio trackers and are willing to manage local encrypted data and installation dependencies. It is less suitable for users who want a fully hosted service with minimal setup, because self-hosting requires operating the application locally and advanced features may require the Pro Version. The project also depends on multiple runtimes, including Node.js, npm, Python 3.14, uv, and Docker, which adds operational overhead compared with a cloud-based service.

project readme (upstream, from github) — read inline

rotki Logo

rotki: The Opensource, Self-Hosted Portfolio Manager

A privacy-focused portfolio manager, accounting, and analytics tool.

GitHub release Docker Image Version GitHub commits GitHub contributors Visitors GitHub forks GitHub stars GitHub last commit Github downloads Hiring X Follow Discord


📌 Table of Contents


📖 Overview

rotki is an opensource self-hosted portfolio management tool that puts privacy first. Unlike most competitors, which are closed-source SaaS platforms requiring you to hand over sensitive financial data, rotki keeps your data encrypted and stored locally ensuring you stay in control. Our mission is to bring transparency to the crypto and financial sectors through opensource software, empowering users with a secure, self-sovereign alternative to cloud-based tracking services.

🔹 Why choose rotki?

  • Open-source & Transparent 📖
  • Self-hosted 🏠
  • Privacy-Focused 🔒
  • Multi-Platform Support 🖥
  • Powerful Analytics & Reporting 📊

For advanced features, check out the Pro Version or explore the Integrations Page.


Features

Portfolio Overview: Track balances across multiple platforms, blockchains, and exchanges.
Graphical Insights: Historical data visualization for better financial decision-making.
Transaction Decoding: Readable breakdown of blockchain transactions, exchange events and other history.
Data Customization: Personalize UI, main currency, language, and more.
PnL Reports: Perform detailed profit/loss analysis using customizable accounting settings.


🔧 Requirements

Before installing rotki, ensure you have the following dependencies:

📌 Required Software:

  • Node.js
  • npm (Node Package Manager)
  • Python 3.14
  • uv (Python Package Manager)
  • Docker

🚀 Installation

rotki supports Windows, macOS, and Linux.

📌 Recommended Installation Method:

📌 Advanced Installation (for developers):


📘 Usage

For detailed setup and usage guides, visit our documentation.

📌 Quick Start:

  • Follow the usage guide.
  • Configure settings & import your addresses.
  • Start managing and analyzing your portfolio! 🚀

📜 Changelog

Stay up to date with rotki's latest features and improvements:

📌 Full Changelog
📌 Release Notes


🤝 Contribute

We welcome contributions from the community! 🎉

🔹 Getting Started:


Contributors

We are thankful to all the people who have contributed to rotki.


📢 Get in Touch

Need help or want to discuss features? Connect with us!

💬 Community & Support

Discord GitHub Discussions GitHub Issues

📌 Follow Us for Updates

Website Docs X (Twitter) LinkedIn


💰 Donations

If you find rotki helpful, don't want to purchase a subscription and would like to support its development, you can make a donation using the following cryptocurrency addresses 🚀

📌 Bitcoin (BTC): 1PfvkW8MC7Ns2y8zn6CE2P2t5f19KF8XiW
📌 Ethereum (ETH): rotki.eth (0x9531c059098e3d194ff87febb587ab07b30b1306)

💡 Your contribution will go directly towards enhancing the project, covering development costs, and supporting ongoing maintenance.

We appreciate every donation, no matter the size. It helps to ensure the project's sustainability and motivates us to continue delivering valuable updates and improvements.

Thank you for considering a donation to support our work!


📄 License

rotki is open-source and distributed under the AGPLv3 License.

📜 Read the Full License

Commercial licensing

If your intended use of rotki (or parts of it) would trigger AGPL obligations (for example: embedding in a proprietary product, redistributing as part of a commercial offering, or offering a hosted/SaaS version), we can offer a commercial license as an alternative to AGPL compliance.

For inquiries contact us: [email protected]

(🔼 Back to top)

Frequently asked questions

Is rotki free to use?

rotki is open source under the AGPL-3.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does rotki do?

A portfolio tracking, analytics, accounting and management application that protects your privacy

What is rotki written in?

rotki is primarily written in Python. Its source is publicly available at https://github.com/rotki/rotki, and it has 4,027 GitHub stars.