If you're buying water, RO filter. When I started I was buying water in gallon jugs (no refill place locally) for something like 79 cents per gallon. If I needed 7 gallons, well, over $5 in water every time.
My RO system cost $139 from Buckeye Hydro, and it's worked wonderfully. How fast you pay that off depends on how often you buy water.
There's another advantage: I'm not schlepping water from the store to home every time I brew. I feed the water from the RO filter into a 7-gallon aquatainer; on brew day, that goes into the kettle, then I set the filter to refilling that container. I also have 1-gallon jugs of water a well (refilled, same source). I use those to feed my Keurig coffeemaker at work.
********
As noted, a grain mill is likely the biggest cost-saver, along with a way to buy and store bulk grain. I buy my main grain
)) from Ritebrew, and almost always get it picked up so no shipping. I am at 70 cents per pound for 2-row, 98 cents per pound for Maris Otter. I keep my grain in 5-gallon buckets, though you could use tubs lined with trash bags or similar.
IMO, the best/most cost effective/most convenient mill out there is the Cereal Killer. $99.
*********
Buying in bulk is the name of the game wherever you can. I get PBW in the 4# refill size from Ritebrew; $16.99 for those 4#. If you buy the 4" canister, it's $23.99, so you're paying...$6 for the canister. A plastic coffee can will work just fine for this, it's the perfect size.
Compare to buying PBW a pound at a time. I pay $4.25/pound this way, a single pound container is probably double that.
***********
Same with Star-San. I buy the 32-ounce container. Buy the 8-ounce container, it's over $1/ounce; with the larger one, roughly half that.
***********
I know, it can be hard to dedicate a lot of money up front to bulk purchases, but if you pay yourself every time what the normal non-bulk costs would be, you'll repay yourself in a hurry.