Perhaps one of the reasons for dropping the default urban speed limit to 20mph is to discourage sat-navs from short-cutting through towns and villages because the calculated journey times for such routes will increase. I personally want a sat-nav option to input my maximum speed at 60mph so I'm not routed onto potentially faster roads.
The Garmin system in the car seems to use more short cut ' rat runs' than my standalone Garmin does. And they dont always save time or distance.
Setting preferences to exclude motorways can sometimes avoid faster roads, but may still include 70 mph dual carriageways. If I have time I will often set the route as a trip, where you can add one or more via points (waypoints) to ensure it uses the route and roads you want. But it can be time consuming . Sometimes one via point is enough, but you may need several to ensure it doesnt still find faster routes between them.
One downside is if there is a diversion due to a road closure it may take you miles out of your way trying to reach a via point you dont actually need to visit. (Until i learned how to quickly cancel 'next via point'
) You also have to be very accurate when placing your waypoint marker tag. If you place it on the wrong carriageway of a dual carriagway/motorway , or off to the side of a main road it may take you miles trying to get to the exact spot you tagged. Again needing a quick cancellation.
You can also set a specified avoidance zone to avoid a particular road, town or village , although I have never used this facility.