# Creating Detailed Isochrones with "Holes"

**URL:** <https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836>\
**Category:** isochrones\
**Created:** [January 16, 2025, 4:52pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836 "2025-01-16T16:52:55Z")\
**Posts on this page:** 19\
**Page:** 1

<div class="post-metadata">

**Author:** ![BarneyB](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/b/3ec8ea/32.png) [@BarneyB](https://ask.openrouteservice.org/u/BarneyB)\
**Post date:** [January 16, 2025, 4:52pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/1 "2025-01-16T16:52:55Z")

</div>

Hi All,

I have successfully set up a Dockerised version of OpenRouteService v8.1.0 and must say it’s been a great tool so far - it has imported the entire Great Britain OSM model and is able to do Isochrones and Matrix Analysis.

Something that we have noted is missing are the gaps within the Isochrone polygon where there would be no access - quite key for rural or mountainous areas. We have this problem even if we set smoothing to 0, but is there something we can enable in the “ors-config.yml” file instead?

Thanks,

Barney

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [January 17, 2025, 9:34am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/2 "2025-01-17T09:34:23Z")

</div>

Hey,

isochrone calculation, in simplified terms, works in two steps.

First, all streets on the routable street network that are reachable in the given time or distance, are calculated.

Second, an isochrone area is created from these points.  
This is where the issue lies. The area creation algorithm doesn’t know anything about any area _not_ covered by a street.  
Thus, it does its best to create an area that it deems “reachable”, from a given “linear” street network of reachable streets.

How we, as humans, interpret this, is rather subjective as well. What constitutes “no access”? Is a forest inside an isochrone with no streets going across it “inaccessible”? What about an open field? Or a swamp?

If you have a specific example, feel free to provide a screenshot, so we can see what’s going on.

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 25, 2026, 3:56pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/3 "2026-06-25T15:56:20Z")

</div>

Hello! Hope it is okay to jump on this thread. I’m having the opposite problem whereby I have my input points and holes are appearing where there are both public rights of way AND roads. I’m using the foot-walking function with the QGIS plugin.

Cheers!

 ![Screenshot 2026-06-25 165602](https://ask.openrouteservice.org/uploads/default/original/2X/8/85bc84c335b2c16997e197fbf590aed02d491035.png)

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 25, 2026, 3:57pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/4 "2026-06-25T15:57:46Z")

</div>

Hey,

would you mind sharing the request you are sending?  
You should find details in the QGIS log panels.

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 25, 2026, 4:17pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/5 "2026-06-25T16:17:27Z")

</div>

Heya! Thanks for such a speedy response!

I ran the process yesterday so don’t have the log, but I can share the parameters from the project history if thats useful?

 ![Screenshot 2026-06-25 171656](https://ask.openrouteservice.org/uploads/default/original/2X/4/48fad62f7849beb419bd23452df1c17268ccfdde.png)

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 25, 2026, 4:35pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/6 "2026-06-25T16:35:35Z")

</div>

Hey,

partially - what we’d definitely need is the startpoints for your analysis that result in the holed isochrone.

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 25, 2026, 4:47pm UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/7 "2026-06-25T16:47:46Z")

</div>

Hey 🙂

ran the process again with the same input. Log:

QGIS version: 3.40.15-Bratislava

QGIS code revision: f68f1bf573

Qt version: 5.15.13

Python version: 3.12.12

GDAL version: 3.12.1

GEOS version: 3.14.1-CAPI-1.20.5

PROJ version: Rel. 9.7.1, December 1st, 2025

PDAL version: 2.9.0 (git-version: 69639b)

Algorithm started at: 2026-06-25T17:42:00

**Algorithm ‘Isochrones from Point-Layer’ starting…**

Input parameters:

{ ‘INPUT\_AVOID\_BORDERS’ : None, ‘INPUT\_AVOID\_COUNTRIES’ : ‘’, ‘INPUT\_AVOID\_FEATURES’ : [], ‘INPUT\_AVOID\_POLYGONS’ : None, ‘INPUT\_FIELD’ : ‘’, ‘INPUT\_METRIC’ : 0, ‘INPUT\_POINT\_LAYER’ : QgsProcessingFeatureSourceDefinition(‘C:/Users/Flora Tiley/Downloads/Access\_to\_Blue/Access\_to\_Blue/DATA.gdb|layername=Bluespace\_access\_Bradford’, selectedFeaturesOnly=True, featureLimit=-1, geometryCheck=QgsFeatureRequest.GeometryAbortOnInvalid), ‘INPUT\_PROFILE’ : 6, ‘INPUT\_PROVIDER’ : 0, ‘INPUT\_RANGES’ : ‘15’, ‘INPUT\_SMOOTHING’ : 40, ‘LOCATION\_TYPE’ : 0, ‘OUTPUT’ : ‘TEMPORARY\_OUTPUT’ }

OverQueryLimit: Retrying in 61 seconds.

OverQueryLimit: Retrying in 61 seconds.

OverQueryLimit: Retrying in 61 seconds.

Execution completed in 207.85 seconds (3 minutes 28 seconds)

Results:

OUTPUT: Isochrones\_Layer\_2026\_06\_25\_17\_42\_00\_f85a235c\_47c0\_4b2c\_9f3d\_d92946ee85ce

Loading resulting layers

Algorithm ‘Isochrones from Point-Layer’ finished

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 6:23am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/8 "2026-06-26T06:23:33Z")

</div>

Hey,

thanks for these details. What is still missing is what point the isochrone in question started from, ideally in `[Lat, Lon]`-format.

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 26, 2026, 8:19am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/9 "2026-06-26T08:19:05Z")

</div>

Hiya,

I’m using a layer not just one isochrone. Do I need to specify a singular starting point?

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 8:24am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/10 "2026-06-26T08:24:22Z")

</div>

Hey,

no, you do not - but that suggest that you might not have one isochrone with a hole in it, but rather a lot of isochrones that overlap (or rather, do not overlap) to create the hole.

The hole might thus just be a result of input points not being routable, or not being present.

If you discover a single starting point that creates an isochrone which seems suspicious, please do share that point 🙂

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 26, 2026, 8:37am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/11 "2026-06-26T08:37:17Z")

</div>

There’s something a little strange going on - I ran the isochrone tool off just the two points (yellow dots outlined in red) that are within the hole. This is the outcome. There is both a road (grey line) and a footpath (green dashed line) that goes right next to the starting points. Is it because the two points are too close together?

 ![Screenshot 2026-06-26 093454](https://ask.openrouteservice.org/uploads/default/original/2X/4/4b804a4edcdc37d1d9c11b18a8e5f7d20739f5c1.png)

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 8:47am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/12 "2026-06-26T08:47:19Z")

</div>

Hey,

again, without the coordinates of your starting points, anything is guesswork at best.  
Could you provide the coordinates of one of your points?

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 26, 2026, 8:58am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/13 "2026-06-26T08:58:42Z")

</div>

Sorry I was confused what was being asked!! Coordinate below in British National Grid:

401765.1440000534, 434465.20300006866

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 9:39am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/14 "2026-06-26T09:39:37Z")

</div>

Hey,

this is connected to the fact that footpath that your points lie on is [a `highway=bridleway` in the OSM](https://www.openstreetmap.org/way/217950299#map=19/53.806538/-1.974546).

The law around bridleways differs from Germany to Great Britain:  
While in Germany, access by foot is forbidden on bridleways, in GB it is generally allowed.  
The openrouteservice, being developed in Germany, currently does not route foot via bridleways.

I have opened [an issue](https://github.com/GIScience/openrouteservice/issues/2303) discussing this topic.

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 26, 2026, 9:43am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/15 "2026-06-26T09:43:20Z")

</div>

Oh you hero, thank you for working that out!

That’s good to know but is a bit of a shortfall. Thank you for raising the issue. How long do these things usually take to get a response?

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 9:45am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/16 "2026-06-26T09:45:58Z")

</div>

Hey,

unfortunately, this can take quite a while - and even if this is changed in the openrouteservice, it would still take a release and then some time for new graphs to be built using this release for the change to take effect.

Fortunately, there is a fix in the data for this issue.  
Adding `foot=yes` on the bridleways in question means that foot routing is allowed, and would be respected by the openrouteservice in about two weeks - see [the info in our backend docs on the topic](https://giscience.github.io/openrouteservice/frequently-asked-questions.html#when-does-the-osm-data-update-in-openrouteservice).

Best regards

---

<div class="post-metadata">

**Author:** ![floortile](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/f/ec9cab/32.png) [@floortile](https://ask.openrouteservice.org/u/floortile)\
**Post date:** [June 26, 2026, 9:53am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/17 "2026-06-26T09:53:33Z")

</div>

Thank you so much! I’ll try again in 2 weeks then…

---

<div class="post-metadata">

**Author:** ![jschnell](https://ask.openrouteservice.org/user_avatar/ask.openrouteservice.org/jschnell/32/971_2.png) [@jschnell](https://ask.openrouteservice.org/u/jschnell)\
**Post date:** [June 26, 2026, 9:55am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/18 "2026-06-26T09:55:05Z")

</div>

Don’t forget to add the `foot=yes` tag on all bridleways in question 😉

---

<div class="post-metadata">

**Author:** ![yurikodiaz](https://ask.openrouteservice.org/letter_avatar_proxy/v4/letter/y/f6c823/32.png) [@yurikodiaz](https://ask.openrouteservice.org/u/yurikodiaz)\
**Post date:** [July 24, 2026, 9:05am UTC](https://ask.openrouteservice.org/t/creating-detailed-isochrones-with-holes/6836/19 "2026-07-24T09:05:11Z")

</div>

Try just one of those points and see if the hole disappears. I’ve seen weird polygon geometry when starting points are super close—could be a snapping thing, hard to say, but worth testing out.
