I’ve seen similar questions asked on this board but none that resolved the issue. Following the documentation and launched local server with:
java -D"dw.graphhopper.datareader.file=arkansas-latest.osm.pbf" -jar graphhopper-web-9.1.jar server config-example.yml
Drive time is 3 hours 7 minutes at: http://localhost:8989/maps/?point=34.1396%2C-90.9841_34.1396%2C+-90.9841&point=34.1901%2C-92.0199_34.1901%2C+-92.0199&profile=car&layer=OpenStreetMap
Online maps an identical drive but estimates the time at 2 hours 35 minutes which is consistent with the estimate by other routing services. https://graphhopper.com/maps/?point=34.1396%2C-90.9841_34.1396%2C+-90.9841&point=34.1901%2C-92.0199_34.1901%2C+-92.0199&profile=car&layer=OpenStreetMap
What do I modify on my local instance so that drive time matches online?
You can easily tweak the ETA via a custom model by request and iterate very quickly with the tuning. Once you are satisfied you use this custom model as your car.json and get the usual fast response speed. If you like you can contribute this improved car.json to the open source project so that others get improved ETAs.
Also we have turn restrictions enabled in the config and use the latest GraphHopper from master branch.