Water is the 4th ingredient most people often overlook in their recipes, yet, IMO, plays a huge role in the outcome.
This is the big one that I think causes considerable variability even on group brew projects (same supplies and recipes).
Fresh ingredients is key, especially with hops and yeast. Grain keeps awhile, if stored properly (uncrushed).
Other possibilities include:
Mash temps/pH -- are you able to hit temps (properly calibrated thermometers?)
Yeast health (do a starter)
Fermentation temps (get a fridge and a ranco controller--"for a 44 [beer score], ferment [ale] at 64, you must"--Yoda)
Sanitization (clean your equipement, sanitize with more than one product periodically to eliminate the "house strains").
Process (replace your plastic stuff and tubing periodically).