Hacker News new | past | comments | ask | show | jobs | submit login
Show HN: ExpenseOwl – Simple, self-hosted expense tracker (github.com/tanq16)
115 points by import-base64 10 hours ago | hide | past | favorite | 40 comments





I built my own similar tool for my wife and I, with the same goal of making entering transactions as fast as possible, and one thing I found useful was predictive form filling.

Some categories have the same thing logged over and over (like for the "Gas" category I always made the title "Gas") so when you select the "Gas" category it prefills the title field with the most common transaction title for that category. Also works in reverse, if you enter the transaction title first it will guess the category.

I also optimized the date picker. We budget month to month, so when you're in this month's budget, all you have to select is the day. No need to select month and year, as so many default date pickers do.

Just some tidbits in case they interest you as well!


Wouldn’t importing a credit card statement eliminate the need for manual entries?

I don’t use an expense tracking tool - apologies if my question may is missing context.


Easier said then done. Most softwares Ive used that attempted this did so poorly. However it is getting better.

Another approach might be to build an app that parses the SMS trails that card transactions generate to reduce the need for manually entering transactions.

.. What are these sms trails? Ive never heard of this.

Notification for transactions being parsed or scrapped for data

I can't find the library right this second but there's a JavaScript library that takes human date descriptions, like "last Friday" and creates a date object. Depending on users' typing speed that might be another convenience factor thing.

These sound great in theory but as an app user I have found their implementation can range from deeply irritating to downright broken. Anti-use cases off the top of my head might be (this was from a calendar/reminder app):

- I write myself an appointment on Monday to remind myself to plan a meal for next Friday, so the app silently moves the Monday app to Friday without telling me just because the words "next Friday" appeared in the event title

- I want to quickly note an appointment for a specific time including an address in the title, when the street number is something like 10A - the app aggressively decides (again without warning me) that I want the appointment to be at 10 a.m. instead of the time I originally suggested when creating the event

In the case of that particular app, I just turned off the "natural language" feature globally - shame because it could have been useful if it was less aggressive in its interpretations and silent modifications of my previous choices, but the app developers told me other users are happy with it so there is no reason to fix it.


thank you! those are good thoughts!

Generally looks like a promising idea even in a deeply-competitive space, however the "selling point" of having pie charts to summarize your monthly spending does absolutely nothing for me - I know, banks etc use them in their marketing of "modern" online tools too, so they look kind of cool, but in practice for decision making about personal finance I find them absolutely useless. What I need to know on a regular basis, during a given month and at the end of the month, is: how much have I spent in general, compared with how much I planned to spend? Am I overspending in a particular category that I need to correct to keep my monthly budget on track, e.g. a fixed allowance for eating out per month, have I spent it all by week three or can I afford to have one more fancy dinner with my wife or with friends and still stay within my budget? Ninjinka's tips sound pretty positive about making the UI friction-free for keeping transactions up to date, because it's my responsibility to put good data in; however if the reporting/charts doesn't tell me anything actionable in an easy to read format then there's no point.

thank you, i'll take this as food for thought and see if i can improve the datavis!

I agree, if you need insights related to budgeting, then I recommend Actual or Firefly, as noted in readme. This app is strictly intended to be simpler. no budgeting, just tracking.


Haha, I guess people making their own expense tracker a thing.

Because I built mine but it's a bit more rudimentary


I've been building something similar for calorie tracking as well. A lot of the apps I've tried don't let me add meals quickly enough (repeat meals from the past, or new ones) or let me enter calorie formulae, and there's a bunch of unnecessary features like goal-setting.

I'm glad that something like this exists!


thank you! look forward to your calorie tracker app!!

That's cool and thanks for sharing! If you are looking for future direction generating reports by category and overall and ability to add attachment of PDF/photo receipts to individual items is really helpful. I use these type of tools to keep track of business expenses for my corp (employee n=me) for my accountant come tax time and have never found the right tool for it. Tried even abusing invoiceninja, craterapp, a few others outside their use case. Eventually I settled on paperless-ngx (pulls from scanner, email address off phone) manual entry into excel now seatable for this on this but still not ideal. Firefly III seemed useful but daunting. I don't need double ended accounting or care about budgeting where I spend money... just receipt, table, report, print all and end of year.

thank you! that's a good suggestion! i kept the pie charts monthly for simplicity. I think adding an annual or all time report doesn't take away from simplicity. I'll look into prepping an insights pdf and having a button for that. cheers:)

I have been using Spliit (https://github.com/spliit-app/spliit). We've added over 5k transactions on it and don't have any complaints so far.

nice that's a pretty cool project!

different intent from my project, but glad you introduced it to me! thanks


Checked out the readme and the screenshots and this looks quite polished.

I didn't see anyway to connect with my bank accounts and pull this information. Would you be open to adding an integration like this? Maybe through Stripe financial connections, or the Plaid APIs?


Once third party integrations like those come into play, I feel that this may become less “simple” and more of a full time job for the maintainer.

(Tools with integrations like these are generally incredibly useful though, they tend to be paid and would need to run as a service)


thank you! glad you like it! currently the intent is to be a simple and fast expense tracker, so there are no plans to integrate banks and auto-combing transactions.

Not sure if this beats an excel file shared on Google drive?

Yes, for sure. The entries in this app is not scanned by Google.

haha! i hope it can! lemme know!

I wish I could figure out how to take pictures of receipts and OCR them into something like this.

pytesseract

At one point I started to design a motorized receipt reader but also another way that could work, a sandwiching mechanism like a scanner, lay em all down like a masonry grid, flatten and scan

Probably phone app is easiest


No need to OCR, just use Gemini Flash 2.0. It's great at this.

How is it not OCR?

The UI looks nice, but feature wise, I think I would rather go with Firefly III. It is a lot more complete.

for sure, i agree with you! i mention firefly and actual both in my readme as much more fleshed out options. intent behind this app was strictly to be simple.

I'll give this a go So far Actual Budget is pretty good, although I wish the dashboard was a bit more extensive.

Im curious what you dont like about the dashboard? Ive been using Actual since the day it went open sourced, and the Custom Reports really make the 'dashboard' whatever I want it to be.

Theres a couple tiny things I wish would be implemented that Ive suggested on Github, but the core is solid.


Actual is cool but its lack of solid integration with the open banking standard (as is used in Australia and other countries) made it a bit annoying as its partnered integrations are pretty rough.

The open banking standard isn't actually all that open.

As a customer you cannot gain access, at least easily. You need to apply for accreditation as a third party financial services provider.


This is super cool!

I was looking for something like this just a few days ago. Ended up going with Flow[1], an open source Android app, because I wanted something that I could enter data on from my phone and run completely locally there. I don't yet have Tailscale running, or some other solution to access my homelab on the go. But it's great to see more and more software designed to run on people's local networks. And from the screenshots ExpenseOwl is the next tool I'd try if Flow doesn't work out... Getting Tailscale or a similar solution up and running is also on the to-do list.

I know other people want direct integration with banking APIs, but for me it's actually a feature to have to enter everything manually. I'm deliberately working on better spending habits, and having a local set of data with me which is actually sometimes ahead of my bank in terms of cleared transactions is good. It means I build the habit of entering and categorizing each time I spend money, and it means I have to regularly reconcile accounts. It's only a hypothesis, but I suspect in the era of checkbooks the practical fact of having to keep up the books manually enforced better spending habits.

[1a]: https://play.google.com/store/apps/details?id=mn.flow.flow

[1b]: Also, github: https://github.com/flow-mn/flow

N.B. There's another expense tracker on the Play store, also called "Flow", which AFAICT isn't open source.


thank you! totally with you on building the habit of manually tracking and being aware of where my money goes! hopefully you like it more when you give it a try, open source, simplicity, and self-hosting are at the core for this.

also, on a side note, for non streaming workloads, i prefer cloudflare tunnels over a vpn solution like tailscale, feel free to check that out too :)

cheers!


Thanks for the suggestion!

How's the simplicy of setting up and accessing cloudflare tunnels over a VPN for the near-totally computer illiterate, in comparison to Tailscale?

Part of setting up a homelab and self-hosting more and more of my digital life has been working toward being able to offer family and very-close friends an off-ramp from the world of cloud-controlled data and computing. Especially among family, there are some folks who will not be able to easily grok things even you, I, and casual power uses would consider "basic."


yea, most certainly! from a setup perspective tunnels are much easier to configure, just need a domain and an agent container that routes to your services. To have family and friends access web services is easy too - there is support for email totp, certificates, passwords, etc. so you'll definitely find what suits you. Vpn is still required the monent you're looking into higher bandwidth requirements, but for services like expenseowl (one-off and quick operations), tunnels are free and easy

This looks super simple to pull into Sandstorm to provide authentication around it... so we're going to give it a try!

thanks! also my first time learning about Sandstorm, will read more about it!



Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: