Beancount Import vs Costflow
A side-by-side comparison of two self-hosted budgeting & finance options — licensing, setup difficulty, resource needs, and what each one replaces.
| Feature | Beancount Import | Costflow |
|---|---|---|
| Deploy effort | Read-the-docs project | Read-the-docs project |
| Health score | 60 · Good | 0 · At risk |
| Category | Budgeting & Finance | Budgeting & Finance |
| License | GPL-2.0 | MIT |
| Language | Python | JavaScript |
| Setup difficulty | Medium | Medium |
| Min. RAM | 256 MB | 128 MB |
| Deployment | source, binary | source, binary |
| GitHub stars | ★ 471 | ★ 33 |
| First released | 2018 | 2019 |
| Replaces | Mint | Expensify, Mint |
What are Beancount Import and Costflow?
Beancount Import
Beancount Import is a tool for semi-automatically importing transactions from financial institutions into Beancount plain-text accounting files. It provides a web interface to review, classify, and reconcile imported entries.
- Semi-automated import
- Web review interface
- Transaction classification
- Reconciliation support
Costflow
Costflow is an open-source parser that turns plain-language messages into Beancount, Ledger, or hledger entries. It lets users record transactions from chat apps and append them to a journal file.
- Natural-language entries
- Beancount and Ledger output
- Chat app integration
- Plain-text journals
Beancount Import vs Costflow: key differences
Beancount Import is written in Python, while Costflow is built with JavaScript. Licensing differs — GPL-2.0 for Beancount Import versus MIT for Costflow. Costflow is the lighter option, starting around 128 MB of RAM against 256 MB for Beancount Import. Beancount Import has the considerably larger community, at 471 GitHub stars versus 33.
Why pick each one
Choose Beancount Import if…
- Released under the GPL-2.0 license
- Written in Python
- Tiny footprint — runs in 256 MB RAM
Watch out for
- Requires Beancount knowledge
- Per-institution configuration
Choose Costflow if…
- Released under the MIT license
- Written in JavaScript
- Tiny footprint — runs in 128 MB RAM
Frequently asked questions
Is Beancount Import or Costflow better?
Neither is universally better. Beancount Import has the larger community; both share a medium setup difficulty, so the decision comes down to features and licensing.
Are Beancount Import and Costflow free and open-source?
Yes. Beancount Import is licensed under GPL-2.0 and Costflow under MIT. Both can be self-hosted at no software cost.
Can I run Beancount Import and Costflow with Docker?
Beancount Import: check the project docs for container support. Costflow: check the project docs for container support.
Which is lighter on resources, Beancount Import or Costflow?
Costflow has the smaller minimum footprint at 128 MB of RAM, compared to about 256 MB for Beancount Import. Real-world usage depends on library size, user count, and enabled features.