You create buffer categories that you slowly fill up over time and use for these one-offs. YNAB calls it "rolling with the punches". Most categories are predictable month to month, and the ones that aren't or are one offs you budget separately for.
Yeah that's essentially what I do, or have a yearly budget for things like furniture rather than a monthly one. I just wish it was more standardized in many apps.