Portfolio & Price Trackers

HledgerFree Plain Text Accounting for Windows Users

Free, open-source plain text accounting for Windows. Track crypto and expenses in readable journal files with CLI and web interfaces.

Free Open source Windows: Yes v1.52.4
9 min read github.com/simonmichael

Hledger is a free, open-source accounting tool that stores your books as plain text files. It is aimed at developers, privacy-minded users and anyone who wants to track a crypto portfolio, expenses or investments with full control over the data. Instead of a database locked inside a proprietary app, every transaction lives in a readable journal file that you can version, back up and search.

The program is built around double-entry bookkeeping, the same method used by professional accountants. It handles several currencies at once, which makes it useful when a portfolio is spread across fiat, stablecoins and tokens. The current release line is 1.52.4, and the project is actively developed, with work on a 2.x series already under way in the main branch.

02

What Is Plain Text Accounting?

Plain text accounting means that your financial records are stored as ordinary text files rather than in a binary database. Each transaction is written as a short entry with a date, a description and postings that move amounts between accounts.

Because the files are plain text, they work well with version control systems such as Git. You can see exactly when a transaction was added or changed, and you can restore an earlier state if something goes wrong. The format is also easy to read years later, even if the software that created it no longer exists.

03

Who Is Hledger For?

Hledger suits people who are comfortable with a command line or who want to learn one. Developers, sysadmins and technically minded freelancers often prefer it because they can script their reports and keep their books alongside their code.

It is less suited to someone who wants a point-and-click app with automatic bank syncing and polished charts out of the box. Users in that category may find the learning curve steeper than they expect, though the built-in tutorials help reduce it.

04

Practical Use Cases for Crypto Portfolios

One common use is recording a crypto portfolio as a set of journal entries. Each purchase, sale, transfer and fee becomes a transaction with clear accounts for wallets, exchanges and cost basis. This gives you a transparent history that you can audit line by line.

Another use is preparing data for tax work. Exporting balances and transaction lists as CSV or JSON lets you feed them into a spreadsheet or a separate tax tool. Hledger does not calculate taxes for you, but it keeps the underlying records organized and reproducible.

A third use is personal budgeting. Since the engine handles several currencies, you can track everyday spending in fiat alongside holdings in other assets within the same file.

05

How Does the Accounting Engine Work?

Hledger reads the journal file, parses each transaction and checks that the postings balance. In double-entry bookkeeping, every movement of value has a matching entry, so the total of all accounts always sums to zero. This built-in check catches many typing mistakes.

Once the journal is parsed, the engine can produce balance reports, register views and summaries for any period you specify. Because the calculation is deterministic, running the same command on the same file always gives the same result, which makes it easy to verify numbers.

06

Why Choose Plain Text Over Spreadsheets?

Spreadsheets are flexible but fragile. Formulas break when rows are inserted, and it is hard to tell whether two cells represent the same transaction. A plain text journal enforces a consistent structure and makes errors visible when a balance does not add up.

Plain text also separates the data from the presentation. You can change how reports look without touching the records, and you can run several reports from the same source. Many users find that this separation makes long-term record keeping more reliable.

07

Key features

Built-in documentation and learning material

Hledger ships with complete documentation in several formats, along with beginner videos and tutorials. Newcomers can learn the journal syntax step by step without leaving the project's resources.

Several user interfaces

You can work from the command line, a terminal interface, a web browser, or an editor or IDE. The same journal file is read by every interface, so you can switch between them freely.

Strong CSV import and export

Hledger is good at importing bank and exchange CSV files and can export reports as text, HTML, JSON or SQL. This makes it easy to move data in and out of spreadsheets and other tools.

Multi-currency accounting engine

The engine is designed to handle multiple currencies within one set of books. It is a useful base for tracking balances across fiat and crypto assets in a consistent way.

High precision arithmetic

Amounts are accurate to 255 decimal places. That level of precision avoids rounding drift when dealing with very small token quantities or long chains of conversions.

Flexible naming and number formats

You can define your own account names, currency symbols and number formats. This lets the journal reflect how you actually organize your finances rather than forcing a fixed structure.

Compatibility with Ledger and Beancount

Hledger is inspired by Ledger CLI and is partly compatible with it. Journals can also be converted to and from Beancount, which helps if you already use another plain text tool.

Scripting and automation

You can drive hledger from the command line, over HTTP or through its API. The project includes many examples, which is helpful for building scheduled reports or custom dashboards.
08

Supported coins

Hledger is a general accounting tool, so it does not depend on a fixed list of exchanges or blockchains. You record whatever assets you hold as commodities in your journal, using the names and symbols you choose. Its multi-currency engine and high precision arithmetic are what make it suitable for crypto balances, including tokens with many decimal places.

09

How to install Hledger on Windows

Quick install
PowerShell · winget
PS> winget install simonmichael.hledger
  1. 1

    Open a terminal

    Open Windows Terminal, PowerShell or Command Prompt. Winget is included with recent versions of Windows 10 and Windows 11.

  2. 2

    Run the install command

    Enter winget install simonmichael.hledger and press Enter. Winget downloads the package and installs it. Accept any prompts that appear.

  3. 3

    Confirm the installation

    Close and reopen the terminal, then type hledger --version. If a version number appears, the program is installed and available on your path.

  4. Download only from the official website

    If you prefer a manual install, download the package only from the official website or the project's GitHub Releases page. Do not use mirrors or links from unknown sites.

10

System requirements

  • Windows with winget available for the simplest installation method
11

How to use Hledger

Hledger works from a journal file, so the first step is to create one and add a few transactions. Once you are comfortable with the format, you can run reports from the command line or open the web interface for a visual view.

  1. Create a new text file, for example journal.journal, in a folder you control.
  2. Add an opening balance entry with a date and the accounts involved.
  3. Record a transaction by writing the date, a description and two or more postings that balance.
  4. Run hledger -f journal.journal balance to see account totals.
  5. Run hledger -f journal.journal register to list transactions in order.
  6. Import a bank or exchange CSV file with the CSV rules feature and check the results.
  7. Start the web interface with hledger-web -f journal.journal and open the address it prints in your browser.
  8. Back up the journal file and keep it under version control.
12

Pros & cons

Pros
  • Free and open-source under GPL-3.0
  • Plain text files are readable and easy to version
  • Multi-currency engine with 255 decimal places of precision
  • Several interfaces, including command line, terminal and web
  • Strong CSV import and export
  • Built-in documentation and tutorials
  • Compatible with Ledger CLI and convertible to Beancount
Cons
  • Command-line focus may be intimidating for beginners
  • No automatic bank or exchange syncing
  • Requires manual journal maintenance
  • Fewer visual dashboards than consumer finance apps
  • Tax calculations must be done with separate tools
13

Is Hledger safe?

Hledger is open-source software, so its code can be reviewed publicly. To install it safely, use winget with the package name simonmichael.hledger or download the release from the official project page on GitHub. After downloading a file by hand, compare its SHA-256 checksum with the value published by the project, and check a signature if one is provided. Never install accounting tools from third-party download sites. Hledger does not hold your private keys, but your journal may contain sensitive financial details, so store it on an encrypted drive and avoid uploading it to unknown online services. Antivirus tools will not normally flag a well-known package like this, but if one does, check the source before ignoring the warning.

  • Official source only. Download from github.com/simonmichael. Ignore ads and lookalike domains.
  • Check the SHA-256. Compare the installer hash with the value the developer publishes before running it.
  • Never share your seed phrase. No developer, support agent or website — including CryptApps — will ever ask for it.
14

Alternatives

Hledger differs from several programs in this catalog in its focus. Raccoin and Rotki are built around tracking a crypto portfolio and generating tax-related reports with a graphical interface, which suits users who want automated calculations. Hledger instead gives you a plain text ledger that you control line by line, with no automatic data fetching.

Tools such as Double Entry Generator solve a different problem: they convert records from payment platforms into Beancount or Ledger format, and hledger can be a natural destination for those journals. Ticker and Cointop are terminal trackers for prices and holdings, while hledger is a full accounting system. If you want to see market prices, a tracker may be the better fit; if you want auditable books, hledger is the stronger choice.

15

Specifications

Price
Free
Type
Open source
License
GPL-3.0
Latest version
1.52.4
Last update
—
Windows support
Yes (available via winget)
Official site
github.com/simonmichael
Source code
github.com/simonmichael/hledger
Install command
winget install simonmichael.hledger
16

Frequently asked questions

Yes. Hledger is free software licensed under the GNU General Public License v3.0 or later. You can install it on Windows with winget using the package name simonmichael.hledger, and there is no paid version that unlocks features.

Open a terminal and run winget install simonmichael.hledger. After installation, close and reopen the terminal and type hledger --version to confirm it works. If you install manually, download only from the official website or GitHub Releases.

Yes. You can record crypto assets as commodities in your journal and track balances across several currencies. Hledger does not fetch live prices automatically, so you enter values yourself or import them from a CSV file.

No. Hledger does not sync with exchanges or banks directly. You download statements or transaction exports from those services and import them as CSV files, then review the imported entries before they become part of your journal.

Hledger is inspired by Ledger CLI and is partly compatible with its journal format, but it is a separate project with its own features and interfaces. Many users move between them, and hledger journals can be converted to Beancount as well.

The software itself does not store your keys or send data anywhere, but you should protect the journal file it creates. Keep it on an encrypted drive, make backups and avoid sharing it with services you do not trust.

Basic familiarity with the command line helps, but you do not need to be a programmer. The project provides tutorials and videos for beginners, and you can start with a simple journal of a few transactions.

Yes, in a sense. Hledger includes a web interface and a terminal interface, so you can work visually in a browser or in a text-based dashboard without writing commands for every report.

17

Verdict

Hledger is a solid choice for people who want complete control over their financial records and are willing to learn a plain text workflow. It is free, open-source and well documented, and it handles multiple currencies with great precision. If you prefer automatic syncing and polished charts, a graphical tracker from this catalog may suit you better. If you value transparent, auditable books that you can version and script, hledger is worth installing and trying with a small journal first.

Download now