As has been said it can depend on about 5 million different things, I've just moved onto a pump but when I was on MDI, I had to have my breakfast bolus about 20-30 mins before breakfast (and even then that often was not long enough), my bolus at lunch was a few minutes before lunch, and my evening meal I had to have straight after otherwise I'd often hypo before the food was absorbed, and yes as In Response said there are thing that would delay me taking it (lower blood sugar, fat content, not knowing what I was going to have)