My financial network map and virtual envelope system

Taking Bargaineering‘s advice to map out my financial network, I decided to diagram how my accounts relate to each other:

I have accounts at three banks, represented by the gray boxes at the top. The first bank offers me free chequing, okay-if-not-stellar rewards on my credit card, and a good savings rate. The second bank offers me a good savings rate and GICs that are easy to manage. The third bank offers me low-MER index funds for my registered retirement savings plan (RRSP) and long-term investments. (I’m 25, so my portfolio leans heavily towards equity.)

UPDATE: I nearly forgot–I also have a Defined Contribution Pension Plan at work, which automatically deducts a portion of my paycheque for my retirement savings. That’s the good thing about automatic deductions–they work for you even if you forget about them… =)

I use a modified envelope budgeting system to get a unified view of my finances, plan my spending, and save up for major expenses. Every week, I balance my books, entering in transactions and double-checking my envelope balances. All income is automatically put into a virtual “Unallocated” envelope. I copy the envelope allocations from my previous paycheque, and these allocations move virtual money to the different envelopes.

Priority envelopes:

  • Retirement: Money I know I won’t touch in a while. I use this to fully fund my RRSP, and I invest the rest in my long-term investment portfolio.
  • Investment: My crazy idea opportunity fund. This is less about investing in stocks or bonds and more about investing in myself. I set a savings goal for this two years ago, and I’m almost at my target amount.  If I want to start my own business, this will be my capital. It’s also useful for taking advantage of opportunities and following hunches.
  • Charity: Good way to make a difference. I regularly support the Toronto Public Library, the Toronto Animal Services, and Kiva.org. 

Infrequently-accessed envelopes: I keep my emergency fund and my travel fund at a certain level.

Regular expenses and flexible expenses: Every paycheque, I use a template to allocate money among my regular and flexible expenses. Then I check the balance of my virtual envelopes. If one of the regular expenses envelopes is lower than it should be or I have a negative balance somewhere, I move money from the flexible expense envelopes. This arrangement lets me build up some “play money” that I can spend on little indulgences.

When I spend money, I track which account it flows out of (Chequing or Mastercard, typically), and I also semi-automatically track which envelope it comes from. Every expense gets taken out of the Play envelope by default, to make sure that all expenses are accounted for. If a transaction matches certain rules or I adjust the envelopes manually, then my system takes virtual money from the corresponding envelope and puts it into the play money envelope. The personal finance system I use (Ledger – it’s a command-line tool for geeks) allows me to prepare reports with or without these virtual transactions, so I can reconcile my finances with bank statements and with my virtual envelopes.

When I want to save for a short-term goal, I create an envelope for it and adjust my envelope allocations. I wrote a shortcut to calculate the minimum I need to save each paycheque in order to meet my medium- or long-term goals by my target dates. That allows me to reduce my Investment envelope allocation and put the freed-up money in my short-term goal envelope. Once I’ve achieved that goal, I return my Investment envelope allocation to my customary amount. This allows me to enjoy things earlier, while still being on track for my medium- or long-term savings goals.

Results: Because I control my spending based on the balances in these virtual envelopes, it’s easy to pay my credit card in full each month. I’ve also been able to fully fund my RRSP each year, and I save a decent amount for long-term retirement outside that tax shelter. Creating envelopes for short-term savings goals like a drawing tablet or a bicycle before lets me build both a budget and anticipation, and I get to do some consumer research along the way, too. The crazy idea opportunity fund lets me try interesting things. When an idea or an opportunity gets large enough, I split off another envelope to make sure I set aside enough funds to explore it well (ex: outsourcing). And yes, I end up with enough Play money to enjoy life, although I often move play money into my Investment envelope because it’s so much fun watching those numbers go up too!

Couple finances: W- is also good with money. We’re both pretty frugal, although we spend where it counts. W- uses GNU Ledger to manage his accounts, too. (The couple that geeks out together…) He uses a similar envelope system, but he allocates money to virtual envelopes on a monthly basis instead of on the bi-weekly basis I use. We keep separate bank accounts, but we reconcile our books every so often so that we can keep track of who needs to be reimbursed for what. =) It’s a lot of fun, or maybe we’re just both weird in the same way.

Next steps: I’m happy with the way my finances work, and I know that I have a reasonable chance of doing well in the future if I just keep plugging away at it. Most personal finance books are written for people overwhelmed with debt or worried about retirement, so there’s very little advice on what to do once you’ve gotten that sorted out. (I’m not guaranteed a good retirement – life happens! – but I probably won’t do too bad.) With a good foundation in place, I can then look at other things: how to get even more value for what I do spend (yay frugality!), how to explore opportunities, and even how to create opportunities for other people.

Big picture: Good money management can help me explore opportunities and avoid one of the most common stressors for relationships, and both help keep me very happy. I’d like to figure out how to manage money really well, because someday I want to be in a position where I can create lots of opportunities for others. I also want to be able to build a library. =) Great money management can help me get there. With that big picture in mind, it’s easy (and fun!) to invest time in reading about how I can save more money, earn more money, or make the most of what I have.=)

Like this? Check out my other posts about personal finance.

3 Pingbacks/Trackbacks

  • Jason Varmazis

    Citizens Banks of Canada http://www.citizensbank.ca allows you to create virtual savings accounts “vacation”, “tuition”, “emergency” etc and move funds between them. Simple implementation of the envelopes.

  • Pingback: Rainy Day Pennies | Debt Free Living and Personal Finance » Financial Network Maps Roundup()

  • Sikandar Ali

    Hey Sacha.. that’s one thorough network! Do you have a tool that you use to create these maps? I liked your other one as well:

    http://sachachua.com/wp/2009/04/24/mapping-my-work-happiness/

  • http://sachachua.com Sacha Chua

    Oh, I just use the free Inkscape drawing program. =)

  • http://inzolo.com Dustin @ Inzolo

    Wow, that is super-geeked out! :D

    I suspect that if a novice tried to follow you plan and was only able to succeed at 70% of it they would still be far better off!

    You plan is actually white similar to what I’ve developed at Inzolo.com. I like how you prioritized you virtual envelopes. I’ve also done this as I found it to be beneficial to me to see the hierarchy of importance.

  • http://www.neobudget.com Luke

    Thanks for taking time to write this! I’ve done a similar thing for years (although I’ve never gone to the trouble of actually diagramming it all out). I’m a programming nerd, so I created my own online virtual envelope system called NeoBudget. Check it out at http://www.neobudget.com.

  • Pingback: Quantified Self Toronto: Second Meetup | sacha chua :: living an awesome life()

  • Jonathan Olsson

    Awesome post. I have been trying out ledger for a while coming from GNU cash with its terribly slow reporting.

    Would be nice to get a peek of your Ledger setup, e.g. scripts etc. Or do you do everything manually?

    • http://sachachua.com sachac

      I hardly ever write manual Ledger commands any more. Most of my frequently-used reports are in comments in a ledger-config.el, and I’ve been gradually moving them to a ledger.org file that uses org-babel to execute pieces of code and display the results. It’s basically divided into these parts:

      – Display actual account balances and transactions so that I can reconcile things with my bank statements
      – Check my envelope balances and the transactions inside particular envelopes
      – Look at credit card transactions per statement so that I can make sure everything’s covered
      – Review whether I’m ahead or behind on household expenses
      – Review average expenses and last month’s expenses to see if I’m still on track and if my semi-retirement expenses are within acceptable bounds

      Let me see if I can clean this up and post it. =)

      • Jonathan Olsson

        Thanks for the reply!

        Yeah, that would be awesome. I’ve been playing around a tiny bit with babel, but my bash scripts are still closer to my heart.

        I’ve been using https://github.com/cantino/reckon to import csv files from my bank, but am interested in seeing how others are doing it.

  • Pingback: How hacking my wants helped me experiment with early retirement » sacha chua :: living an awesome life()