Show HN: I spent 2 years building a personal finance simulator (projectionlab.com)

766 points by scubakid ↗ HN
Hey everyone! After another year of building as a solo dev on nights and weekends, I'm back with an update on this post: https://news.ycombinator.com/item?id=31083093.

TL;DR - ProjectionLab (https://projectionlab.com) is a privacy-friendly personal finance planning tool where you can create financial plans that go beyond the standard online retirement calculators. And by popular request, it now supports self-hosting for Lifetime users!

Something I'm grateful for is that our community here on HN is the difference between PL existing and not. There was actually a time early on when I was one day away from halting work on it. I posted here on a whim, and was shocked to receive some really constructive and energizing feedback that went on to power my indie dev journey over the past two and a half years.

As a quick recap, the story started when I dove head-first down the financial independence rabbit hole. I wanted a hands-on and visual way to explore the trade-offs between different life paths. One thing led to another, and I decided to build ProjectionLab.

After last year's Show HN, I really put my nose to the grindstone, and here are some of the big developments:

- Self-hosting for Lifetime users (spin up your own private deployment, based on Docker Compose, includes support for auth/encryption)

- Cash-flow visualization for each simulated year (sankey charts)

- Tax analytics (detailed breakdowns for projected income, taxes, marginal rates, effective brackets, etc)

- Major redesign of entire app, with landing page and resources now split into separate project

- Filing separately option to improve support for international locations that don't have joint filing

- Roth Conversions and 72t (SEPP) distribution modeling

- Improvements to US tax estimation (Secure 2.0 updates, rental property tax deductions, Medicare + IRMAA, NIIT, principal residence exclusion, etc)

- Better support for planning as a couple

- More modeling options for cash-flow priorities to support different budgeting philosophies and goals

- Extra liquidity + withdrawal options, ability to fund expenses with specific accounts or route income to specific accounts

- Customization options for Monte Carlo simulations (characterization of success rates and outcome types, option to set random seed, etc)

- And a whole bunch more! (https://projectionlab.com/changelog)

The HN community has had a huge role in shaping my overall direction with PL, and I can't wait to hear what you all think of the updates and where you would like to see things go from here.

As always, PL is free to try, with no need to create an account. It does not ask to link your financial accounts, and it has a sandbox mode if you just want to hop in and see how it works.

--Kyle

291 comments

[ 0.27 ms ] story [ 352 ms ] thread
I love that this has the ability to track multiple scenarios eg FIRE and LeanFIRE. I can see people using this to compare kids vs no kids as well.

I would love the ability to simulate 401k contributions assuming an annual max contribution increase. For example, I will often put into an investment returns calculator that I am contributing $20k per year to retirement, however 10 years from now the annual max will probably be over $30k.

PL assumes contribution limits increase over time to match inflation, so if you switch to visualizing results in actual currency (as opposed to today's currency), and you choose to contribute the max, you should see those nominal contributions increasing over time.
How can I alter the 401k match rate?
Employer Contribution is one of the inputs in the 401k cash-flow priority form, and you can use the More Options ellipsis to the right of that input to choose from several ways to model it.
I really appreciate that this includes UK specific stuff! So many things are US$ only.

I'm slightly confused by the pricing. Is the free plan persistent only in 1 browser? Have I understood that right?

The sandbox is free, but data persistence is one of the premium features (though there is also a free trial for premium).

My thought process was that I wanted to make as much of the planning functionality as I could free to try and low-friction. I'm always open to feedback on pricing model though. Sounds like you would prefer to see a level of persistence in the free tier? If you have more thoughts on how that should work, let me know!

If you want to make it a lifetime thing maybe consider giving 6+ month trials to hook people in and show skin. I considered this for this type of app. Congratulations on the launch!
Thanks, good point. I do grant extended trials on request (as described on the pricing page), but maybe I should make that a more prominent thing?
I think you could easily use it to drive a point home: It's designed to be a for life SaaS -- and you believe in that design so much that the first year of many to come is on you.
Probability of success is a common and relatively simple metric to compute and explain, but it is not a good one. If you retire at 60 and expect to live until 90, there is a big difference between running out of money at 70 vs. 85. A metric such as expected shortfall https://papers.ssrn.com/sol3/papers.cfm?abstract_id=3674232 is better since it considers the magnitude of the shortfall.
The monte carlo module includes the ability to break down outcome categories based on how far you make it during each trial. But I definitely want to add more metrics and customization to that mode over time. Expected shortfall (I assume from point of failure till end of plan?) sounds like a good one!
This is one that concerns me. My family members typically live into their 100s and are still very independent and mentally healthy up until a week or so before dying. I am incredibly healthy and don’t expect anything different, barring accident. I plan on waiting as long as possible to start collecting social security, but I’m wondering what else I need to consider when anticipating 30-40 years of retirement.
Yes, the twin idiocies of the freebie planners offered by the major investment firms: "Expect to live until" huh? My death has a probability distribution that's better understood than the market, any Monte Carlo simulations should include varying my life expectancy? And "probability of success" huh? Are we so stupid that we fly the plane into a mountainside at 85, rather than modifying behavior? I want to simulate my actual varying life expectancy and varying budget as I respond to market forces. Our house is paid off and I'm a great cook, but I love to spend money as our budget allows.

MaxiFi Planner is the best consumer tool I know; my advisor also uses it. A puzzle that's too hard for it, making me want to script scraping its reports: Should I choose an annuity for part of my TIAA-CREF retirement savings? Even if one understands that the answer is generally no, there's always a number that flips the decision. TIAA annuities pay more than market, but enough more? There's an annuity paradox that programs like MaxiFi Planner reveal: Even a poorly priced annuity lets one plan to spend more. On the other hand we want to optimize our daughter's inheritance.

Economists optimize varying notions of "utility". The above is a game, scoring what one gets to spend adapting to market conditions, taking into account the inheritance as one's year of death varies. This is beyond any planning software I've seen, yet it's exactly the game I will instead play out badly by hand.

I really like the "early retirement now" spreadsheet for that reason. (https://earlyretirementnow.com/2018/08/29/google-sheet-updat...) It allows you to plug in expected cash flows and your allocation model, and compares it to the stock market history to get a safe withdrawal rate.

Using that you can also try out alternate scenarios like "what if I converted x00k of my savings to an annuity in exchange for a predictable cash flow" and see how it affects your withdrawal rate.

Oh hey, it's you again!

I discovered projectionlab (formerly projectfi) on HN a while back and have been loving it. Every other "retirement calculator" I found was a dozen text fields and a simple output graph or two - Projection Lab gave me what I really wanted, which was the ability to do much more involved modeling of various scenarios:

- What happens if I buy a house in X years?

- What happens if my old company IPOs and I get a windfall of $Y in X years?

- What happens if I change assumptions on investment returns or inflation rates?

- What happens if I retire at various different ages?

- What happens if my salary increases by 2, 5, 10, 30% each year?

- What happens if we do this kind of mortgage or that kind of mortgate?

- All of the above, but also modeling my in wife's finances?

- All of the above, but with beautiful, interactive graphs instead of my ugly spreadsheet outputs

- All of the above, but without the several formula typos that I made while building my spreadsheet

Anyway, it's amazing, I love it, and nothing else out there really seemed to compare. I found your free plan more than met my needs, but I wound up subscribing just to support it. I'm quite hoping you're able to make this successful long-term so that I can keep using it until I eventually retire. :)

Thanks so much! I use PL for all my own planning too of course, and keeping it around is very much the plan.

Is there a particular direction in which you'd like to see me build from here? The public roadmap is overflowing with ideas at this point, and I'm curious how folks would rack and stack them.

I like that this is a solo-dev project, but there's probably loke, a good chunk of people who like this tool likely have built some kind of spreadsheet or other thing to get close to it and likely know exactly what they would like to see for certain things.

Having the abilty to perhaps build our own models and keep them to ourselves, or maybe have them available to share might not be a bad idea.

I'm not sure if this is reporting, or setting up a sequence or frequency of payments, etc. Depends on the backend I suppose.

Having a little trouble parsing the specific feature ideas here. It seems like one of them may be an ability to share a read-only view of your plans... but on the other(s) I might need a little more detail.
Plug-ins. "The Modeling Store":

* Startup9000 Simulator

* ClassicAutosAsInvestments Simulator

* My Personal Stamp Collection API Plug-in (not-public, not-for-sale)

Basically, theres enough weird stuff out there that could be a component of someone's financial hopes and dreams, that communities could sprout on being able to enhance around a topic.

There's also that first step of needing/wanting to be able to API-into the product to explore the idea to see if it's even something that can be modeled.

Being from the UK, having a plugin layer able to differentiate US from UK implications on finances would be extremely useful. But also as a fellow developer I hate to recommend a level of refactoring that might break you!
have you seen the UK tax template (plan settings > tax) and account types? curious what additional controls / differentiation you'd like to see.
Ah - no :-) I just read the feature list and didn't dig deeper. Just assumed it was going to be US-only. Impressive if not. How do you keep up?
> share a read-only view of your plans

I think this is because you are conflating "model" and "plan"; whereas the conventional use of plan probably means model, when playing in your Sandbox it looks as if "plan" is model+data.

The grandparent poster is describing sharing models.

I think the comments below summed it up well.

Basically setup my own versions of Roth, or other products.

In Canada, TFSA and RRSP are one

Have you seen the TFSA and RRSP account types?

I try to offer as much configurability as I can, but if there are other areas where you'd like to see more of that, definitely let me know.

I can't really think of much to add, honestly!

Iirc the last time I was using it heavily, the only issue I was having trouble with was modeling drawdowns of existing funds. It kept drawing down my wife's account to build up mine. It didn't affect the overall outcome (we had the same dollar amount together regardless), but it was a little annoying and made it harder to figure out which account was actually running low. That said, it's extremely possible that I was just doing something wrong and just hadn't configured it correctly. Whenever I get back to it, I'll work up a minimal repro case and ask about it in the discord. :)

Counting the days to pass before reaching that dangling carrot is a disease. The reality is, for richer or poorer, we all retire when we die.
Alright Debbie.
I know it’s a depressing thought—but considering that money can be thought of as a “unit of work”, and so many people are tying it up in stocks of large companies, miles away—praying they won’t get hit by a car before that special day.

What about getting units of work to start working right now, instead of hoping some big company will make people’s money “grow” into the future?

Invest in local economy. Invest in people. Folks thinking about retirement backwards.

I'd rather not be unable to work and be poor by "investing in people" and "local economy". They sure as hell don't come to my aid when I need it.

You for shit have no idea how bad elder care is in America

By investing locally and in people I don’t mean spend all your money. But to that end, neither are the big companies going to come to your aid. But your neighbors and local business owners will be MUCH more likely to come to your aid after supporting them and helping them succeed.
wow! That's a level of personal financial analysis that I've never contemplated doing. It's fantastic that someone has built such a great tool for others, and you get so much value from it.

For me personally, I fail to understand the point of doing this level of analysis, at lest for some of the things you listed that seem highly hypothetical and uncertain (e.g. raises, IPOs, even future mortgage rates). I guess that's the nature of any financial forecasting, but this just seems like it's taken to a level that I would not find helpful. Take for example the kind of mortgage to choose, a decision that all home buyers face and can be daunting (there's so much mortgage/lender lingo that is foreign to most people). The "right" answer is to go with a shorter-term, variable rate, because on average you'll pay less interest than longer-term/fixed rates. But that's also the wrong answer for some people who don't want, or can't handle variability in their biggest monthly expense. Layering those factors into an overall retirement calculator/projector just seems like overkill and over complicated for that decision. MHO...

Well, I can't speak for most people, but one thing I've been doing is using this modeling as feedback into my budget.

1. Track my current expenses (I use https://lunchmoney.app/, but a spreadsheet works fine). Looks like I'm spending $X/month

2. Build a reasonably complete model of my financial life assuming $X expenses per month (I use ProjectionLab)

3. Do I run out of money before the end of my life? If yes, look at my expense breakdown and look for areas to reduce it (fewer ubers, eat out less, cut back on diamond-encrusted tiaras, etc). My new budget is $Y/mo. Goto 2.

4. Do I have a ton of money left at the end of my life? If yes, I can increase my budget a bit for things I like (more ubers, eat out more, more diamond-encrusted tiaras, etc).

I can revisit this over time as my income changes, or my retirement account value changes based on real-world market performance, or I get a windfall, or I get married, etc etc.

Cutting back on the tiaras before the mocha lattes, huh? Starbucks really has their customer retention on lock ;P
> The "right" answer is to go with a shorter-term, variable rate, because on average you'll pay less interest than longer-term/fixed rates.

My 30 year fixed-rate mortgage at 2.6% begs to differ ;) Yes, I had lucky timing; I was able to refinance right at the start of 2022 when rates were pretty much at their lowest.

But overall, I think your assertion isn't correct. It really just depends on conditions. If rates are in general very low, you probably want that fixed-rate mortgage, even if the variable one is -- at least for now -- a little bit lower. In the US, most people get 30-year mortgages, and it's pretty much impossible to predict what rates will be like in 10, 15, 20, 25 years.

If rates are higher, and you believe the reason for that is temporary (like the inflation reduction measures going on now), a variable-rate mortgage is probably a good gamble. If rates drop, you can always refinance (either into another variable-rate mortgage, or to a fixed rate).

Honestly, the 7% now on a 30-year-fixed isn't that bad, historically. It just feels bad because we had such low rates in recent years.

Just playing around with it and the UI is really intuitive and snappy. Nice job!
Thanks for checking it out! That UI is the product of more than a few sleepless nights.
Are you using Angular for the UI?
I'm using Vue.js, Vuetify, Chart.js, Firebase, Paddle, and GCP.
Very impressed with the mobile UI. Only thing I found was on the Plan tab on mobile there's that tiny extra horizontal scroll. Looks like your app wrapper does max-width: 100%, so if you add overflow-x: hidden you can fix it.
Oops, thanks for the heads-up!
(comment deleted)
I see you have Pensions for Commonwealth Countries; what about US Government Pensions? I FIRE'd at 40 with a US Military Pension and some other investments, and can't really adapt your tool to my case due to that.

There are some interesting things about those pensions though (and the related VA compensation metrics). I have a spreadsheet I use to advise veterans who get sent my way because there are no decent tools out there for that population.

Otherwise it looks awesome!

Congrats! (or in FIRE parlance, f you haha)

Curious what you feel is missing for modeling military pensions. Have you checked out the configuration options for Custom income streams, the Advanced change-over-time editor, and/or binding the start/end of things to milestones?

Nope, I completely missed where you put them. I've always considered them as an asset, as it were, not a fixed income stream. That's my mistake, and I found where you put them. It just wasn't where I expected!
No worries, if there's anything else you run into trouble modeling, feel free to reach out any time.
I was able to recreate my spreadsheet (in a much more pleasing UI!) in a few minutes here.

I think I'm going to be recommending your tool to the Veteran's I help advise.

Awesome work here. I really mean that.

Thanks so much! It's a real passion project of mine :)
Seems to be a discoverability issue.
Would love to see some integration of insurance and risk modeling (e.g. techniques to minimize downside risk, healthcare insurance, ACA subsidy interaction, P&C/home insurance, auto insurance risk) included as a feature — that's been incredibly hard for me personally in my own risk spreadsheets! DM me if you are interested in some of the actuarial data on some of these and how I model it...
Is there a certain kind of UI you envision for more first-class support for insurance modeling? Curious to hear your take on the best way to integrate that into the current setup.
Most unexpected insurance-covered events follow a Poisson-like distribution in both cost and frequency. By modeling different deductibles, premiums, and frequency of events, you can help plan and optimize for what insurance coverage you should purchase, how much drawdown you could expect to see in worst case scenarios, etc.
Immediate feedback on the initial sandbox flow (UK perspective) - there's no reason 'mid-career UK' should be a defined benefit pension (or not) and 'early career UK' defined contribution (I assume? Since it doesn't say?). Could also be a mix, bit more likely in the case of mid-career. DB vs DC is just a function of where you work, these days the former is mostly public sector only (too many private companies with DB pensions blew up and wiped out/raised a lot of questions for their DB pensions).
Would you prefer to see those sandbox examples configured differently? Or would you rather see a different and more nuanced kind of sandbox system where it asks you some questions first and constructs an example based on your responses?

Oh and to answer your question on DB vs DC -- if you're talking about the workplace pension cash-flow priority, that would be for modeling Defined Contribution pensions. For DB, that's an integrated section within the corresponding income stream.

I came here to say the same thing. Defined benefit pensions are very rare these days in the UK.

Also I have to add that your sentences saying, "workplace pension cash-flow priority" and " corresponding income stream" are very confusing.

I think the figures for the UK example are not great. Living expenses, health care, and medical expenses are a lot larger than seems correct.

Also you should probably put a tool tip defining concessional vs non-concessional Australian superannuation. Also that should be in AUD rather than £

Amazing interface BTW

Display currency is more of a global setting (About You section), and iirc the Australian sandbox example should already be using AUD there(?)

When you add a new account or cash-flow priority for super contributions, the choices should have subtitles distinguishing Concessional from Non-Concessional. But sounds like there are some other places it would be helpful to show those subtitles too?

Always happy to tweak/update the sandbox examples based on what folks would like to see. Any good data sources you'd recommend for more typical UK expense figures?

Oz super is always going to be in AUD even if the subject is living in the UK. Does your system support investments in multiple currencies? ;-)

More typical UK expense figures is a really hard one. I think we've got a crazy wide spread of incomes and expenditures the same as the US but with differences such as almost nobody earning average income will spend any of it on health care.

When you launch the sandbox you have to select some kind of template (the implications I think aren't completely clear at that stage, I understand better now). If you're in the UK, there are two options, described as (from memory) 'early career with a pension and some savings' and 'mid-career with a defined benefit pension'.

It just doesn't really make sense as a coupling, if I'm early career with a DB pension or mid-career with DC it's not clear which is the better pick or how much it matters. As far as I can tell having selected one and played with it just briefly, it doesn't matter at all because all it does is set some numbers you can change anyway, there's no built-in knowledge/logic of specific country pension schemes or tax treatments?

My intent with the sandbox was just to make it easy for folks to quickly hop into the tool and get a sense for what you can do with it, without the friction of needing to go through the full onboarding process and dig up a bunch of numbers to plug in... the idea being that if you want to give it a real try with a more tailored scenario, you'd typically start over and do the normal onboarding flow.

Does that help clarify? And/or do you feel like a different approach for the sandbox would have been better?

I would just remove reference to defined benefit pension, it doesn't really make sense & isn't important. Afaict nothing else needs to change, it's just confusing copy.

I like the tool & UI & feature tour though. :)

Interesting, so you would recommend keeping the floating tour widgets? Some other commenters found those obtrusive... er, I guess "useless" was the precise word haha.
Excited to see the self-hosting option!

I’ve been distracted from personal finance stuff for a minute but am circling back to it now that some life stuff has settled out. If this planning cycle works well, I’m planning to buy the lifetime program and start self hosting.

Thanks for all your work on this!

Glad to hear it! I've put about two and a half years of blood, sweat, and tears into building PL at this point, and that kind of feedback means a lot :)

If you run into any trouble modeling things, feel free to reach out any time.

It would be really nice to be able to set my "Cash Flow Priorities" to max out, or put some other dollar amount in a 401k rather than specifying a percentage of my income.

EDIT: Ah I now see that I can do this, it was just sorta hard to discover at the bottom of the form.

If you click the "more options" ellipsis next to the Your Contribution input, you can switch it to an amount in today's currency or actual currency if you prefer.
This looks amazing, thanks for sharing it.

I'm interested in a few angles that are leading me to look at your self-hosted option - is there any customizability that is possible?

For example being in Canada, the basic features will work great, but some of the other types of accounts or programs will be different. It would be nice to be able to set it up in the software, and failing that, see if learning how the backend works with a self-host license will allow addition of different items.

I was just thinking about something like this last week - financial literacy can have an outsized impact on anyone's life, and being able to generate so many scenarios can make a huge difference in visualizing things so clearly for the formula of one's own life.

Most of the account and cash-flow priority types have customization options that can be used to do things like adjust liquidity/withdrawal rules and dial things in based on your circumstances. And if there are some specific areas where you'd like to see even more of that, just let me know.
Thanks for the reply, I'll check it out.

What stood out to me was

Roth, etc are very specific to the US.

Things like RRSP, TFSA, etc are more common in Canada. Maybe it's just configuring one of the flow types as you mentioned.

Did you see the RRSP and TFSA account types? ;)
"ProjectionLab has no link to your real financial accounts and the data you enter stays in your browser unless you choose otherwise. "

I don't see why this would be a positive? I'd love an alternative to Personal Capital (since it got bought out), but without a direct connection to my banks/creditcards/etc, that connection just ends up being less secure.

They're going to get this comment regardless of the direction they take so it doesn't matter.
True. I wonder what the use case for this is exactly. Maybe a strictly offline platform for techies?
I'm pretty agnostic on the existing account linking/aggregator services out there, but I know some folks prefer not to use them, and I wanted to build a tool that gives the user direct control of their data and how/where it's stored.

If a (strictly optional) account linking feature is something you'd like to see added though, there's an item on the public roadmap for it that you might like to upvote. It’s currently still in the Suggestions category because it’s a bit of a contentious topic within the PL community, and we’ve had a few discussion threads about that on the discord.

In the past, I’ve tried account linking in some other tools, but always ran into syncing issues (especially on 2FA accounts). From what I understand, that’s still somewhat common even with solutions like Plaid.

With PL, I also wanted to initially steer clear of that support/maintenance tar pit (especially since I’m a solo dev), and design a tool where the focus is more on long-term projection rather than fixating on the latest daily stock price fluctuations.

Man I loved PC when it actually worked. I think I had about 8 or 9 months of seamless integrations and then half my accounts blew up overnight with the response being "yeah we know, we're working on it" for months before I gave up. That was probably 5 years ago now.

The tricky thing about a service whose main value prop is aggregating all your account data together is that 99% of them working isn't that much better than 1% of them working. Looking at your financial dashboard is pretty useless if it can't sync one of your 401k accounts, or one of your loans is using 90-day old data.

I think this is actually a positive for the non-aggregators like ProjectionLab. If I spend 10 minutes manually updating everything when I check it once a month (or however often), I know everything is up-to-date and don't need to spot check things.

This site helps you run financial simulations, though. It's not supposed to be a product you use to track your account balances.
What are you using now instead of Personal Capital? I'm still stuck with them and looking for an alternative.
I've been tracking finances for years, can I add historical information so I can see timelines or is it all just from today forward like so many other trackers?
You can add historical progress points. Just with the caveat that those currently capture a slightly higher-level rollup than account-level data. In the future I plan to convert the progress point system into more of a "snapshot" system.
Some feedback:

- I filled in a bunch of data. I closed the window. I then went back to the website, it tells me that it has recovered my previous session, and it gives me the option to either "Remove data" or "Upgrade now". I want to use the recovered session. I guess that's not allowed? It's really jarring to put it on the user to actively click a button that deletes the data that they have painstakingly entered just a few minutes before. Psychologically, it feels like an AH move: "I have your data, but you can't get it." TBH, it would be better to pretend the data wasn't recovered at all. If you really don't want a user to recover their data without paying, I suggest that you put an expiration timer on it: you can recover without paying if you do so within, say, a day, but not after that.

- It's unclear what's expected when entering RSU grants.

- 401k can have a before-tax and an after-tax part. Due to mega-backdoor Roth 401k conversion, I expect a major part of my 401k withdrawals to be tax-free. Is there a way to model that?

- Cash flow: the destination of excess money is not very clear. I can see how excess money is going into savings, but it's not obvious how to tune this. You can say that RSU grants are going to a certain investment account, but that's not how things work in the real world: cash comes in from various sources into a single put (the checking account). Investments are made based on allocation. E.g. Every month, $XXXX goes to an investment account from that checking account. I don't think you can set things up this way?

- Is there a way to way to model a rental investment, where expenses (property tax, insurance, interest, etc.) can be subtracted from rental income and only the difference is added as taxable income?

- After retirement, I see my effective tax rate going up quickly, peaking out at 60%. I have no idea where that's coming from. If that needs debugging, I can, unfortunately, not share the data because I couldn't recover it. ;-)

- For me, the future projections are way lower than other retirement calculators. I find it hard to judge where the discrepancy is coming from, but I assume that the effective tax rate thing is a major contributor. There might just be too many knobs to play with and I probably have some things set up incorrectly.

- Personally, I would no pay $9/month for this. It's a very nice tool, but retirement planning is not a monthly on-going thing, and I already have way too many recurring services that I don't use a whole lot. For me, it would make more sense to be able to enter my info and save it under an account, have limited free functionality, and offer a way to pay for more. Ideally, in a non-recurring way. E.g. I'd be totally fine paying $10 for a day planning. And I might use that once per year. That's obviously much less than paying $9 per month, but at least you'd get something instead of nothing at all? I have no idea how this would change conversion and how many people are in my boat.

Thanks for the detailed feedback! I appreciate you checking out the tool.

And sorry to hear you ran into trouble with the sandbox. It should warn about unsaved data if you try to close the tab. Did that not happen in your case? In the past, if you closed it, that was that. But a couple people slipped through the cracks and said it would have been much better if a recovery mechanism existed. So now it does haha... but maybe there's a way it can strike a better tone? FWIW I also love the idea of a time-based restore system, I just couldn't think of a good way to implement it that wouldn't be easy to tamper with (within the context of the current architecture anyway).

For RSU grants, folks usually model the amounts they expect to vest in each year. The Advanced change-over-time editor may be helpful.

For mega backdoor, would a Roth 401k cash-flow priority with custom limit be helpful? In the long-run though, I'd like to have a more formal option to make this easier.

For rental properties, this is where the Generate Income option on a House asset (real assets column) comes into play. The best experience here is if you have the premium features and set tax estimation to US mode. If you want to kick the tires on that, I do offer extended free trials and/or general discounts on top of the default trial period.

Oh right, and the effective tax rate metric is customizable. Do you currently have that set to include things like local/property taxes?

> ... it would have been much better if a recovery mechanism existed

I didn't get a warning and it's definitely better to have a recovery mechanism... if you can use it.

> I just couldn't think of a good way to implement it that wouldn't be easy to tamper with

I wouldn't initially waste time trying to address those who'd go through the effort of tampering with it. It's something to address when you have proof that it's a real problem.

> this is where the Generate Income option on a House asset (real assets column) comes into play.

I missed that.

> Oh right, and the effective tax rate metric is customizable.

I played around a bit with tax rates, but I definitely did not enter anything close to 60%.

> Do you currently have that set to include things like local/property taxes?

I don't know. I couldn't restore the data!

What browser/OS? (unless you'd rather not share, that's fine too). I just re-tested chrome, safari, and firefox on Mac OS and seems like the close tab warning works as expected. That being said, it's always possible there's some specific flow that's not handled properly, so I'd be curious to hear more details if you remember.

To clarify what I meant on the recovery mechanism, the current implementation is what folks had asked for. afaik it does work(?), but does currently require signing up for the free trial. No worries if that's not for you though; and FWIW you could be right that perhaps it would be better to have a non-tamper-proof time-based permissive restore system if it would reduce friction in the average case.

My guess on effective tax rate is it was likely including property taxes. Adding those to the numerator during retirement when taxable income is usually lower could drive up that number.

It was Win10/Chrome. Definitely did not see a warning (though I was aware that the data would be lost.)

> ... but does currently require signing up for the free trial.

I don't remember the exact working. Did it explicitly mention the free trial in the data recovery dialog?

> My guess on effective tax rate is it was likely including property taxes. Adding those to the numerator during retirement when taxable income is usually lower could drive up that number.

That's possible. I didn't fill anything related to property taxes, so it was probably implied? With CA proposition 13 (which caps the property tax increase), the property tax on rentals will be low compared to property value when you've owned the property for decades (as would be the case when you're in retirement.)

Oh dang, you're right! I thought the recovery process made the free trial aspect clear, but it's not explicit enough if you bail without viewing the upgrade page. I've taken a note to improve the copy.
Is there any way to trial the self hosted version? I'm rather interested, partially as someone who doesn't like the idea of putting such data "in the cloud." (For products with less sensitive data I would try the monthly subscription first.) I'm assuming not, and that the self hosted is probably a small percentage of your customer base. But worth asking!
Easiest way to get a feel for the self-hosted version is just to play around with the sandbox in the web app and enter fake data if you like. The planning experience is essentially the same.

If you did end up jumping for the self-hosted version though and hated it for whatever reason, I could always refund you.

I'm yet to spend time on this, just wanted to let you know that I absolutely despise those walking tour flying dialogs. They're very annoying and quickly move my eyes from the dashboard (what I want to see) to something I couldn't care less about.
Me too! haha. I only added those after a bunch of people requested them.

If you dismiss them, they don't reappear do they? They shouldn't at least...

I had it reappear 3 times when I was trying it out moving between pages. First time was before I created an account though in the sandbox. Not sure exactly the replication steps for the second and third time it showed up.
A complicating factor is that there are at least 2 different tours for different sections of the interface (e.g. high-level dashboards vs plan interface).

Do you think it would be better to infer from one tour dismissal that a user never wants to see another tour for anything else?

I would say just write a tutorial page (or pages) or a record a video to show usage. Those tours really are useless.
I've had some less tech savvy users say they appreciated them. Demo videos might be a good alternative though... until other folks roll up and ask for a UI tour to show them where the demo video collection is :P
A vision of the future. Camera pans across a shoebox sized apartment, suspended above a nondescript city with light pollution, air traffic and highway noise. The space is furnished sparsely with generic wall art and take-out containers. Camera shifts to a middle aged, impoverished wageslave sitting alone, displaying a nervous tick, and staring in to their iMirror with an expression of concerned gravity. The camera zooms in to the lips, which begin to move: "Model me this..."
That's the past. The future is a shoebox sized tent in a nondescript city. He is maxing out the 401 so when he retires, he can afford rent.
Thank you for developing and offering the self-hosting capability. I use spreadsheets for my planning at the moment but self-hosting makes this a serious option.
It's always been a goal to put the user in direct control of their data, so when the HN community asked for a self-hosted version last year, it felt like a natural fit.

Way back, PL actually started as one of my personal planning spreadsheets as well. I'm sure there are more talented spreadsheet creators out there than me, but I remember that mine ultimately reached a point where the complexity became so difficult to maintain (and trust) that I threw in the towel and decided to build a web app instead.

Nice! this is the closest to what I have been wanting to build for myself.
If there are any pieces of what you envisioned that you would like to see added to PL, let me know.
I just had a play around with this for the first time in a long while (I tried it when it was projectfi), and it's in a really great place - well done!

Love that you support countries other than the US - that's very much appreciated.

What I find when setting up long-term plans like this is that you realize just how much key life decisions affect the outcomes, along with how much uncertainty I have over those life decisions! Being able to explore those permutations is definitely very insightful.

Thanks for playing around with the new version! And sounds like it's a good thing I rebranded to ProjectionLab -- that first 'i' in ProjectiFi was way too easy to miss ;)

Is there a certain direction you'd like to see me take the tool from here?

One thing I'd like to see is a better way to estimate the cost of kids, and specifically per-child. If I could just click a button and have the average cost for a child for my country added from a certain year, that would be awesome.
That's a neat idea! when I estimate future expenses, typically I'll do independent analysis and then bring my final numbers into PL. But I think you're right that there's an opportunity to include some country/region benchmarks or perhaps integrate APIs to pull them on-demand. Do you happen to know of any data providers that might be straightforward to integrate for that sort of thing?
Check out numbeo.com, it's a crowd-sourced database of cost-of-living data.
Hmmm getting NXDOMAIN for that at the moment. But I do see results for it on google. Someone give the intern access to DNS settings?
This looks awesome! It's exactly what I've been looking for; not a tool for investment geeks, but a practical, everyday, personal finance app. Just signed up for a trial!

Some feedback I have after I signed up and filled out my finances and financial plan:

- It would be nice to somehow get back to the original wizard that I went through when I signed up. Could swear there were some things such as "spend my remaining income" or whatever that I can't seem to find elsewhere in the app. (EDIT: I found this, it's at the bottom of the Plan page, and was a bit hard to find)

- I'd love to be able to export my data even though I agreed to cloud storage. Maybe that conflicts with something about the way that stuff is stored in the cloud, but just being able to download any of the data, even if it isn't all of it, would be nice. Maybe there is a way to do this, but I haven't figured it out.

- Thank you for providing dark mode!

- I don't know what "Starting Cost Basis" is when adding a Roth IRA, and it would be nice to just have a tooltip explaining it; I have a Roth IRA and kinda know what a cost basis is, but honestly have no clue what "starting cost basis" really means or whether it applies to me. Maybe I should know, but this would also be good learning opportunity for users.

> I don't know what "Starting Cost Basis" is when adding a Roth IRA

Cost basis is irrelevant for Roth IRAs since you don't pay gains tax on them. I wonder why this is being asked?

Thanks for giving it a shot! If you go to the account menu (upper right) > Export, you can export your data as JSON.

The sim uses cost basis as how much of the existing $ in there represents your contributions (as opposed to gains), which is useful to know b/c your contributions to a Roth IRA can be withdrawn tax-free and penalty-free. You should see a corresponding category for that in Plan Settings > Drawdown as well.

Interesting, but I don't understand how it does taxes. I live in a completely different, much more income tax heavy nation than the US. It shows me large tax returns in the simulation which are orders of magnitude higher than what I'm actually getting. How do I disable or change these?

Edit: Found the taxes tab, but it seemingly didn't apply the income tax rate I provided in the plan creation "wizard"?

Is there an option to add Non-Publicly Traded Securities?
It might be helpful to repurpose/rename one of the existing account types and set up some custom liquidity/withdrawal settings. Or perhaps use a custom asset from the assets section.

If there are any specific mechanics you have trouble modeling, let me know -- would be good to capture them on the roadmap.

Hung browser tab on Safari iPad.
Oh that sounds odd. Same experience with another browser or just safari? If you can recall anything else around that time that might help with reproducing the issue, let me know.