I find ABRP spot on, within 2 to 3 percentage points of the final results, usually on the positive side. But I worked for that.
I know that my car is bad at estimating the remaining range, and don't even display the battery level with numbers, I only have a 0-25-50-75-100 bar. I knew it from the start, so I invested in an OBD2 Bluetooth dongle, tested several apps, and subscribed to ABRP. Now the app knows my car, my habits, and my road conditions, which gives excellent estimations.
The small difference usually comes because I drive very conservatively by design. I like to keep the battery graph on to check the slope of battery discharge, and 'beat the slope'. So reaching my destination with 2 points more than the estimation is kinda normal for me.
You just have to be careful of changing conditions between the time you plan you trip and the time you drive. Head wind, colder battery, heavy foot on the accelerator, need for A/C, those are the factors that will impact your effective vs. estimated range with ABRP. Even improvisation and changing the plan mid-trip does not throw it off (but the graph is no longer accurate).