This is a common question I get asked by clients. The answer can be quite individual as one stomach tolerates certain foods better than the next.
All things being equal in regards to food tolerances then there are usually 3 factors:
1) Type of training to be performed
2) Weight goal of the client
3) Time of day
1) For sessions where the goal is to push fitness capabilities, or work at a high intensity then as a general rule aim to eat around 2 hours beforehand. The meal should be light and contain a mix of low glyceamic carbohydrates(slow release), a good quality protein (chicken, fish, eggs) and a little bit of fat. The examples are endless but for example: egg on toast, pasta and tuna and light dressing.
Some people are caught in the problem of already having eaten a "lunch" or "dinner" many hours before and wonder if they can eat a snack to "top up" their energy nearer the session. How close and what to eat will affect each other. Again, try to include a mix of slow release carbs and some good protein: an oat based biscuit and small yogurt should do the trick, or a piece of fruit and small handful of nuts.
2) If your goal is to lose weight then you might want to be careful of adding too many calories into your day. Don't add another meal to your day and call it your "pre gym meal". If possible work your sessions to tie into a suitable window after your normal meals. Id also suggest that with the goal of fat loss in mind it may be effective to train slightly hungry to promote a greater chance of fat being used as the fuel source for exercise. How hungry might need a bit of trial and error as afterall you will need some energy to train optimally.
3)In an ideal world we could train at whatever time we wished and eat however many suitable hours beforehand. As this is not always the case, snack options as discussed above generally provide the pre gym top up.
A common dilemma is with those who train very early in the morning. While I have had a few clients that have gotten up 2 hours before their session to eat for a 6:30am session, I wouldn't expect or even advise it (sleep is important). At this time of day I find simple and easy to digest foods the best option. Foods like cornflakes work well as they have a mix of starches and sugars. The milk also provides a little bit of protein and fat. I'd go for a small bowl an hour or 45 minutes before.
For some clients this hasn't been enough. They have still felt a bit low energy. For these individuals I find a sports drink during training works very well. Go for lucozade stills or similar (around 120 calories per bottle). Any higher calorie is generally against the goal of improving body composition, and any lower calorie doesn't provide enough energy.
What to eat before exercise can be a tricky one with hectic timetables. However, with a bit of planning and sensible choices needn't be an issue. The perfect pre gym food is quite individual in regards type and timing.