There are
1,184 mi
from Hamilton, OH to San Marcos, TX
That's the driving distance. It would take 21 hours 15 mins to go from Hamilton, Ohio to San Marcos, Texas.
The flight distance (direct flight from Hamilton, OH to San Marcos, TX) is 1,003.35 mi.
1,184 mi = 1,905.76 kms