I guess I could list out some of the mods I've done and the price.
Stiffer bedplate springs and aluminum knobs: $11
Metal Extruder Upgrade: $12
Amazon.com: Official Upgraded Ender 3 v2 Ender 3 CR-10 All Metal Extruder Aluminum MK8 Bowden Extruder 40 Teeth Drive Gear for Creality Ender 3 Pro/Ender 5/ CR-10 Series 3D Printer : Industrial & Scientific
www.amazon.com
Roller spool holder and filament feed: $7 (Mainly the price of the bearings (3, but they came in a 6 pack), everything else is printed)
Probably the biggest upgrade is using an OctoPi server. It allows you to directly access and control the printer through a browser window, which is muuuuuccchhh easier than swapping in microSD cards to do your prints. The cost of it is basically a Raspberry PI, USB/OTG cable, and Power supply. I was able to score a Pi Zero 2W just recently for the normal $15 price. Figure another $10-15 for the accessories and $20 for a 64GB microSD card.
I also have a glass print bed ($12) I use from time to time. I find it easier to print on the included magnetic mat, but there are times when the glass comes in handy. I also designed and printed a small attachment that clips onto the gantry to change the engagement of the microswitch for the Z-axis so that I don't have to move the actual switch when I change from glass to magnetic. Slide on the clip, put the glass bed on and do a final leveling tweak, and off you go.
As I said before, out of the box, the Ender 3 works great, but if there was only one mod I did, I would recommend buying a set of bearings and doing that roller mod I posted the picture of above. The filaments are a little more abrasive than you would think, and eventually, they will wear through the tension lever on the printer. That roller will save that if you don't ever want to upgrade. This is what mine looked like after probably 5 1kg rolls of PLA. The roller gives the filament a straight shot on into the guide, saving that wear point.
The heavier bedplate springs are also nice as it keeps the bed in adjustment longer than the stock springs. Still, not 100% necessary, just makes your life easier in the long run.
Again, none of this stuff is strictly necessary. I probably printed for 4-5 months before I got into doing mods to the machine. It is sometimes fun doing different things and seeing if it makes things easier or better. For lots of the mods, the only thing it will cost you is the filament and time printing. All of the designs are online and free to download, along with tons of other things to print. If you've thought of it, someone has probably designed it already.