A simple, powerful local-first personal finance tool

Backwater Finance is a simple, powerful application designed for personal finance bookkeeping — recording, cataloging, and reporting on one’s personal financial transactions.

Use the application
A screenshot of the application

Features

Learn more

So what’s the story?

Backwater Finance’s origin is in a spreadsheet that I started to keep track of my personal finances after incurring several fees from overdrafting my checking account when I was first starting out. I didn’t like the notion of paying for ignorance of my own current situation. Maybe my mom was right — I needed to balance my finances. A checkbook seemed outdated, though …

Spreadsheets can get one pretty far, but I found myself thinking about ways to make it easier to use and understand; more streamlined. In 2021, I started developing this application in my spare time. To practice my trade without boundaries; to tinker productively on something … Since then, I think it’s become quite the useful tool. I hope that it’s helpful to you in your financial quest as well!

What is local-first software?

It’s pretty simple — local-first software primarily executes and stores data locally on your device. This is in contrast to the standard practice of many applications today, where remote, third-party servers “in the cloud” store and process users’ data — often at the expense of users’ privacy. With specialized application architecture, local-first software allows for the modern connectivity and convenience of the cloud without forcing users to surrender stewardship of their data.

Local-first software has a bunch of other benefits, too. In our opinion, it’s easy to understand why the movement has been gaining traction recently.

What about data privacy?

The short story is that we store the minimal amount of data necessary to provide our services.

We log some information about communications with our servers for technical support and quality assurance, including your IP address, but don’t store it long-term.

Basic license

If you use the free, Basic license, our systems don’t store any data for or about you beyond the information transiently logged for support & QA.

Premium license

If you use the Premium license, our systems remotely store some data necessary for billing and providing services.

In the case of the Account Sync feature, we remotely store configuration and authentication data, encrypted-at-rest. In securely encrypted communications, we transmit your transaction data to you, by way of Plaid, without storing that data.

In the Database Sync feature, the application securely transmits and receives your database as a file to and from compatible cloud storage platforms of your choice. Your configuration data is stored locally, not by us. We do not receive or store any sensitive information related to this feature.

For the full details, read the application’s privacy policy and terms of service.

Some disclaimers

Beta

The application is currently in beta status. That means it’s in active development; things are improved and new features are added frequently. Besides the suite of automated tests, we manually test things extensively ourselves … but unfortunately bugs sometimes sneak past. The goal is absolutely that everything works correctly, of course, but there’s no guarantee. Let us know if you have any bug reports or suggestions — we appreciate it!

Data encryption

The application’s data storage is provided by database technology built into web browsers: IndexedDB. The IndexedDB standard does not natively support encryption — other websites cannot access your stored data, but it is not “encrypted at rest” and thus not secured against unrestricted access to your device. This has a similar security profile to storing an unencrypted text or spreadsheet file on your computer — access to that file could be restricted by securing access to your device, using data encryption at a lower level (e.g. using volume encryption provided by the operating system), etc.