The first thing you need to do is to know where your money is coming from, and where it is going. The "coming from" part is easy, as it is typically the income from your day job. The outgoing portion is a bit tricky because we all tend to make many purchases throughout the year. That doesn't mean we cannot track it.
There are a few ways to track your money flow: 1) Use mint.com; 2) Use Quicken; or 3) Create your own spreadsheet.
I personally have used all three methods above. I painstakingly added each transaction into Quicken for many years to keep track of where my money is going. In hindsight, that was probably unnecessary, but it did instil a sense of discipline in knowing where my money was going. What I recommend is use a tool such as Quicken over the course of three months. Every dollar and cent counts. If you can't track it, you will lose it. Sometimes we just subconsciously spend money without knowing where, why and how.
Mint is free, so I suggest using that as well, as it is automated once you set up your bank accounts with Mint. The nice thing about it is that you see all your finances (non-cash) in one place, and the information gets updated automatically. Sweet!
Creating a spreadsheet is the most useful for me. It gives me a snapshot of my finances, and allows me to create "what-if" scenarios. For this, Google Sheets will do the job just fine. In each sheet, you would have these categories: 1) Income; and 2) Expenses. These would be itemized would be prorated for monthly and yearly, to give you a sense of how much you earn or spend in those time periods. See the example below.
By creating a spreadsheet like the one above, you can get a snapshot of what you are actually spending, and this gives you the ability to perform a health check on your finances. This is then technically your budget, and you are free to create as many different scenarios as you see fit. Should you want to retire early, create one scenario. Should you want to retire, but have your spouse continue working for another 5 years, create yet another scenario.
Play with formulas such as withdrawal rate, and tax rates. See below.
This allows you to create "what-if" types scenario with different withdrawal (yield) rate and tax rates. You can also enter the assets into the spreadsheet like how I laid out above, and use these to calculate the investment income based on the yield rate.
Personally I visit my budget spreadsheet quite often, and currently it is on a daily basis as I am in semi-retirement mode. My goal is full retirement in two years. The different scenarios have given me peace of mind, knowing that whichever way the wind blows, one of my scenarios has it covered. This helps me avoid surprises as I move towards FIRE - Financial Independence Retire Early.