#13726·mapbox-gl-js

clip layer stops removing a Mapbox Standard building in v3.18 that it removed in v3.12 (now rendered as fill-extrusion instead of model)

Author: baczkowskijCreated Sep 15, 2026Updated Sep 16, 2026
Labelsbug :lady_beetle:auto-triaged

mapbox-gl-js version

Regression in v3.18.1 (please confirm still present on latest). Works correctly in v3.12.0.

Browser and version

Chrome 141 / macOS 15

Expected behavior

All 3D buildings inside the clip polygon are removed - as happens in v3.12.0, and as described in Mapbox's own "clip layer to remove features" guidance for Standard.

Actual behavior

In v3.18.1 one specific building (by KANAALWEG) is NOT removed, while every neighbouring building inside the same polygon is. It disappears with setConfigProperty('basemap','show3dObjects',false), confirming it is Standard basemap 3D - but the clip layer (model/symbol) does not remove it. This indicates the building is now rendered as fill-extrusion/building rather than model (as it was in v3.12.0), and clip-layer-types only accepts 'model'|'symbol' (confirmed: the runtime hard-rejects 'fill-extrusion'/'building'), so there is no way to clip it.

Possible resolutions: (1) correct the data so this building renders as a model like its neighbours, and/or (2) allow clip-layer-types to target fill-extrusion/building.

clip does not remove one Standard building (v3.18+)

Link to the demonstration

https://codepen.io/baczkowskij/pen/PwpbWxB

Steps to trigger the unexpected behavior

  1. Load Mapbox Standard (mapbox://styles/mapbox/standard), centered on the Utrecht Merwedekanaal depot ~[5.1088, 52.0751], pitch 60, zoom ~17.5.
  2. Add a clip layer with clip-layer-types: ['model','symbol'] over a polygon covering the depot site (see demo).
  3. Observe the 3D buildings inside the polygon.
  4. Load the exact same style + clip in mapbox-gl-js v3.12.0, then in v3.18.1, and compare.

Relevant log output

bash