There are
931 mi
from Broken Arrow, OK to Sterling Heights, MI
That's the driving distance. It would take 17 hours 27 mins to go from Broken Arrow, Oklahoma to Sterling Heights, Michigan.
The flight distance (direct flight from Broken Arrow, OK to Sterling Heights, MI) is 816.34 mi.
931 mi = 1,498.99 kms