I am using OpenLayers 3 with GeoWebCache (GeoServer). Are there any performance differences between WMS and WMTS when using GeoWebCache?

I'm currently using url http://localhost:8080/geoserver/gwc/service/wms? and I would like to know if it will be faster to use WMTS instead

  • There should not be any meaningful difference in the speed if OpenLayers is configured right to send WMS requests so that the BBOX matches the tile extents. If it doesn't you should get an error.
    – user30184
    Commented Aug 7, 2016 at 9:51
  • but in the first time there is no cache, so maybe it will be faster to use wmts till the geowebcache will cache layers?
    – tal attar
    Commented Aug 8, 2016 at 15:58
  • The cache is the same for all services as well as the seeding process.
    – user30184
    Commented Aug 8, 2016 at 19:21
  • Cross-posted as stackoverflow.com/q/38805884/820534
    – PolyGeo
    Commented Dec 19, 2016 at 20:55

1 Answer 1


As long as OpenLayers is configured to make requests aligned to the grid, there should be no significant difference.

If your GeoWebCache instance is using FullWMS mode, then requests not aligned to the tile grid will be handled by merging, rescaling, and cropping tiles to fit the request which is significantly slower than using the tiles "as is". Without FullWMS mode, such requests will simply fail.

If you are using "Direct Integration" in GeoServer then requests made to GeoServer's WMS endpoint (geoserver/wms instead of geoserver/gwc/service/wms) will attempt to use GWC to handle the request and if that fails, it will render the image from scratch. So if you are using that endpoint and make requests not aligned to the grid, you will be bypassing the cache. If "Direct Integration" is off, then that endpoint will never use the tile cache.

While WMTS is not inherently faster than WMS, it does avoid the potential for these situations if you misconfigure OpenLayers. You would instead get errors or misaligned map layers, which ought to make it more obvious that you have a problem.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.