It may be less about it being cheaper, and more that you know what your budget is for a given year but perhaps not what it is three years from now. You can spend this year's budget with confidence and not worry about having to lay off your dev staff next year when donations dry up. It also requires management expertise to manage a software building team - not something a lot of non-profits have.