We go the income route. We built in a 12.5% buffer above our base annual spending. Generally any irregular or unexpected expenses above $1,000 get charged toward the buffer (e.g., vacation, major home or vehicle repair). Irregular expenses less than $1,000 get absorbed in our base spending, because those things are just an expected part of everyday life. In most years we should leave most of the buffer on the table, which, theoretically, should make up for the occasional year when we might need more than the total buffer (e.g., new roof, car replacement, major healthcare expenses).
Given where we are in the market cycle, I also targeted a 100% success rate for cFiresim runs. If I had been FIREing in, say, 2010, I probably would have been happy with a 90% success rate (easy to say in hindsight, I know).