I think the PRIMARY cause of poor mpg relates to the cam profile and rear gear. Of course a myriad of other details come into play, but cam and gearing are the big two.
At cruise rpm the cam profile needs to be within a reasonable operating range. If your cam profile is 2500 to 6200 rpm range, let's say, you need to be at or above 2500 rpm engine speed minimum. Thats where the final gear ratio and chosen cruise rpm/mph speed come into play.
I used to get 5 or 6 mpg with my old side oiler, radical solid roller cam with a range of 3000 to 7000. BIG dual carbs that ran rich as well, not to mention 12.5 to 1 compression, what a beast THAT motor was! I changed the carbs to smaller vacuum secondary Holleys and leaned out the jetting. Got me a 'solid 6 mpg', up from 5! DANG! Had to change the cam profile (solid flat tappet, 2000 to 6200 rpm range), along with new custom pistons which lowered the compression so I could run more advanced timing. But the BIG factor was moving the pistons UP in the cylinder bore to zero deck height to gain 'quench' in the combustion chamber (which also allows for more advance and lower octane). End result: 11 to 12 mpg. Top loader with a 3:31 rear gear. About 3000 rpm at 70 mph.
Advancing the timing is a HUGE factor in improving the mpg, but it must be done carefully and wisely to avoid knock or ping.
Now if I threw an overdrive in there with the 3:31 rear gear the rpm might drop TO LOW at 70 mph and actually hurt the mpg. Guess I would just have to drive faster...
Realize I'm in HAWAII, it's not common to be able to maintain 70 mph around here for any distance to speak off. With the old motor and the high rpm cam I would often run THIRD gear on the freeway (50-55) just to keep the freakin' rpm within a reasonable range to keep from fouling the plugs! Close ratio top loader, 1st to 65 mph, 2nd to 85, 3rd to 115, 4th to wonderland, still pulling like a freight train.

Approximate mph per gear.