It's related to the observation I made in my post about managing photos on my iPhone. In that post I said that non-Apple apps tend to not run passively in the background even if you enable Background App Refresh.
Here is a recent result from MapMyWalk on my iPhone.
I think that's what happening with MapMyWalk. It looks like iOS isn't letting MapMyWalk access the GPS for location continuously. This results in the waypoints appearing irregular and the red line being crooked.
For comparison, here's the display from MayMyWalk on an Android device.
There is significantly less deviation on Android. The little discontinuity in the middle is where I crossed the street for an oncoming car.
This also has the effect that MapMyWalk's statistics are reported incorrectly on iOS. The distance and pace will be slightly off.
Generally this isn't really a problem with MapMyWalk.
But the same phenomenon can be observed with Google Maps. Often when you open Google Maps on an iPhone, the location will show as the last location where you used Google Maps. Then in a couple of seconds, the location will be updated to the current location.
I use Google Maps Timeline feature. Overall Google Maps Timeline on iOS has a lot less granularity than on Android and often will completely miss segments of travel. Even when it does record the travel the resolution isn't sufficient to identify the business visited. Google Maps Timeline on Android does an incredible job of this.
Neither of these examples disqualify location services on iOS. The upside is that the iOS battery usage is significantly lower than Android.
In an admittedly unscientific attempt to compare, I went back to the last 30 days of my iPhone 6S compared to the next 30 days of my Essential PH-1. The iPhone 6S milliamps/hour averaged 55.63 compared to 69.03 on the Essential PH-1.
It's a trade-off.