Just spitballing here, but those numbers actually look correct for the legs you mentioned. [EDIT: And iFly also chose 2,500 for me when set to VFR]. iFly has a max altitude in the aircraft performance, but not a min. I bet you're set for VFR, and iFly assumes 2,500 is a valid altitude for this flight. According to the winds aloft, that's actually an "acceptable" (not to me!) altitude for those two legs you mentioned. When I set mine to IFR, it then chose 3,000 and 4,000 for the trips up and back. iFly doesn't factor in things like drag, minimum safe altitudes, etc. - only what altitude works best for the winds. Maybe some day it can be tweaked to account for some more variables.