Firefly III is a free, open source personal finance management project written in PHP and released under AGPL-3.0. It has 24,649 GitHub stars, 2,289 forks and 169 open issues, and was last pushed 6 hours ago. On this registry it ranks #3 of 12 tracked projects in Personal Finance Management, and is listed as an open source replacement for 2 paid products, with 5 head-to-head comparisons available. It gained 59 stars over the last 6 tracked days.

Firefly III — Self-hosted personal finance manager with double-entry bookkeeping

What is Firefly III?

Firefly III is an AGPL-3.0 licensed, self-hosted personal finance manager written in PHP that uses double-entry bookkeeping to track income, expenses, budgets, categories, tags and savings goals, and it is built for individuals and households who want to own and control their own financial data instead of renting a cloud accounting subscription.

What it is

Firefly III is a free and open source personal finance manager that runs on infrastructure the user controls. It lives in the PHP ecosystem, is distributed through Packagist and as a Docker image, and is published under the AGPL-3.0 licence. Its core is a double-entry bookkeeping system, the same accounting principle commercial bookkeeping packages rely on, wrapped in an interface designed for personal rather than corporate finance. The project originates in the European Union and its README frames data sovereignty as a first-order concern rather than a marketing afterthought.

The concrete problem it solves is the loss of visibility and control that comes with spreadsheets or proprietary cloud accounting. Firefly III replaces the manual ledger and the subscription accounting suite with a self-hosted application that shows where money goes: budgets, categories and tags organise transactions, rule based handling and recurring transactions reduce manual entry, piggy banks track progress toward savings goals, and built-in income and expense reports turn records into insight. Import from banks and other sources happens through external tools, so no data leaves the server unless the operator explicitly configures it to.

Key capabilities

  • Double-entry bookkeeping system as the accounting foundation.
  • Rule based transaction handling, with the ability to create your own rules.
  • Recurring transactions to manage scheduled money movements.
  • Piggy banks for saving toward a goal.
  • Income and expense reports, plus clear views of overall financial status.
  • A REST JSON API that covers almost every part of Firefly III.
  • Two factor authentication for account security, support for any currency you want, and an official Docker image.

Who uses it and how

  • Privacy-conscious self-hosters, because the application is completely self-hosted and isolated and never contacts external servers until explicitly told to.
  • Households handling more than one currency, since any currency can be added.
  • People leaving QuickBooks or Xero, who need double-entry rigour without a per-seat subscription.
  • Automators and tinkerers who script against the REST JSON API or push imported data in from external tools.
  • Docker-based homelab operators who deploy the maintained image alongside their existing stack.

Getting started

Install from the official Docker image documented at the project documentation site, or pull the package from Packagist; a public demo is linked from https://firefly-iii.org/ if you want to look before you deploy.

How it compares

QuickBooks and Xero are commercial, vendor-hosted accounting products sold on subscription, while Firefly III is AGPL-3.0 software that the user hosts, with no per-user licence fee and no third party holding the financial records. The trade is operational: the commercial products include hosting, support and compliance work, whereas Firefly III hands the operator the server, the backups and the upgrades. It targets personal finance rather than the multi-entity business accounting those products cover.

When to use it — and when not to

Choose Firefly III if you are willing to run and maintain a PHP application, keep backups, and apply upgrades yourself in exchange for full data ownership and no subscription cost. Do not choose it if you want a vendor to host, patch and support the software for you, or if you need business accounting features such as payroll or multi-entity consolidation. Be aware that the licence is AGPL-3.0, which is copyleft, so proprietary embedding is not an option.

project readme (upstream, from github) — read inline

[![Packagist][packagist-shield]][packagist-url] [![License][license-shield]][license-url] [![Stargazers][stars-shield]][stars-url] [![Donate][donate-shield]][donate-url]

Buy Me a Coffee at ko-fi.com


Firefly III

Firefly III

A free and open source personal finance manager
Explore the documentation

View the demo · Report a bug · Request a feature · Ask questions


Billionaires and fascists are breaking democracies and international alliances. Their profits are costing us our safety. (Digital) sovereignty is more important than ever. Firefly III is free open source software and originates from, and lives in the European Union (🇳🇱). Support your local software developer for a free and open society.


About Firefly III

Firefly III on iMac

"Firefly III" is a (self-hosted) manager for your personal finances. It can help you keep track of your expenses and income, so you can spend less and save more. Firefly III supports the use of budgets, categories and tags. Using a bunch of external tools, you can import data. It also has many neat financial reports available.

Firefly III should give you insight into and control over your finances. Money should be useful, not scary. You should be able to see where it is going, to feel your expenses and to... wow, I'm going overboard with this aren't I?

But you get the idea: this is your money. These are your expenses. Stop them from controlling you. I built this tool because I started to dislike money. Having money, not having money, paying bills with money, you get the idea. But no more. I want to feel "safe", whatever my balance is. And I hope this tool can help you. I know it helps me.

Purpose

Firefly III on iPad

Personal financial management is pretty difficult, and everybody has their own approach to it. Some people make budgets, other people limit their cashflow by throwing away their credit cards, others try to increase their current cashflow. There are tons of ways to save and earn money. Firefly III works on the principle that if you know where your money is going, you can stop it from going there.

By keeping track of your expenses and your income you can budget accordingly and save money. Stop living from paycheck to paycheck but give yourself the financial wiggle room you need.

You can read more about the purpose of Firefly III in the documentation.

Features

Firefly III is pretty feature packed. Some important stuff first:

  • It is completely self-hosted and isolated, and will never contact external servers until you explicitly tell it to.
  • It features a REST JSON API that covers almost every part of Firefly III.

The most exciting features are:

Then the things that make you go "yeah OK, makes sense".

And the things you would hope for but not expect:

And to organise everything:

  • Clear views that should show you how you're doing.
  • Easy navigation through your records.
  • Lots of charts because we all love them.

Many more features are listed in the documentation.

Who's it for?

Firefly III on iPhone

This application is for people who want to track their finances, keep an eye on their money without having to upload their financial records to the cloud. You're a bit tech-savvy, you like open source software and you don't mind tinkering with (self-hosted) servers.


The Firefly III eco-system

Several users have built pretty awesome stuff around the Firefly III API. Check out these tools in the documentation.

Getting Started

There are many ways to run Firefly III

  1. There is a demo site with an example financial administration already present.
  2. You can install it on your server.
  3. You can run it using Docker.
  4. You can deploy via Kubernetes.
  5. You can install it using Softaculous.
  6. You can install it using AMPPS.
  7. You can install it on Cloudron.
  8. You can install it on Lando.
  9. You can install it on Yunohost.

Contributing

You can contact me at [email protected], you may open an issue in the main repository or contact me through gitter and Mastodon.

Of course, there are some contributing guidelines and a code of conduct, which I invite you to check out.

I can always use your help squashing bugs, thinking about new features or translating Firefly III into other languages.

[Sonarcloud][sc-project-url] scans the code of Firefly III. If you want to help improve Firefly III, check out the latest reports and take your pick!

[![Quality Gate Status][sc-gate-shield]][sc-project-url] [![Bugs][sc-bugs-shield]][sc-project-url] [![Code Smells][sc-smells-shield]][sc-project-url] [![Vulnerabilities][sc-vuln-shield]][sc-project-url]

There is also a security policy.

[![CII Best Practices][bp-badge]][bp-url]

Support the development of Firefly III

Firefly III is a side gig. With your sponsorship or support, I can spend more time on Firefly III. So, if you li

readme truncated — read the full docs on github

Frequently asked questions

Is Firefly III free to use?

Firefly III 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 Firefly III do?

Self-hosted personal finance manager with double-entry bookkeeping

What is Firefly III written in?

Firefly III is primarily written in PHP. Its source is publicly available at https://github.com/firefly-iii/firefly-iii, and it has 24,649 GitHub stars.

What is a good open source alternative to QuickBooks?

Firefly III is one of the open source options listed as an alternative to QuickBooks, Xero. Compare licences, stars and activity side by side on the Firefly III profile.