The map loads from a third party
An embedded Google map pulls tiles, fonts and scripts from external servers — and your visitors’ IP addresses travel with the request, before anyone has clicked anything.
Map design · Privacy · OpenStreetMap
The map below loads nothing from an external service — no tile, no font, no script. That is why there is no consent gate in front of it. And because it is drawn in the browser rather than delivered as an image, every layer can be designed. Try the presets.
This site’s own palette — the map as part of the brand rather than a foreign object.
Why this matters
An embedded Google map pulls tiles, fonts and scripts from external servers — and your visitors’ IP addresses travel with the request, before anyone has clicked anything.
Because data goes to a third party, the map may only load after active consent. Someone looking for your address first meets a grey box with a button on it.
Same colours, same typography, same motorway shields as every other site. On an otherwise designed page, the map is the one patch that does not belong.
How I build it
I pull the required section from OpenStreetMap once — roads, water, green space, buildings. The result is a file, not a subscription.
From then on it sits where your images sit. There is no map service left to fetch anything — and therefore none that could log anything.
The map is drawn in the browser. Colours, stroke weights and layers live in a style file — the same geometry carries any design that suits your brand.
What else for
Once the map is yours, it can show things a map service has no field for. Both examples below use the same technique as the map above — only different data.
Google Maps knows no relationship between two places — only routes from A to B. Where material comes from, where it is transshipped and where it goes is a statement about your company. That has to be drawable.
Sample data. The places are real, the supply relationships between them are invented.
“I travel this far, beyond that there is a surcharge.” Trades, care services, field service, delivery. The zones are real circles in kilometres — they keep their true size no matter how far you zoom in.
The same local dataset as above, only with zones placed on top.
What you end up with
Every request goes to your own domain. There is no external service involved, so there is nothing about one to disclose.
Without a third-party transfer, the reason for the prompt disappears. The map is simply there when someone looks for your address.
No vendor can change how your map looks because they reworked their own design. The style file sits with you.
The section above loads around 240 kB compressed — once. A tiled map fetches the same view as dozens of images and reloads on every zoom.
Honestly
Four limits that belong on the table before the job, not after it.
Frequently asked
No. It is a transfer to a third party, so it generally needs consent before it loads and an entry in your privacy policy. That is not a ban — it is effort you can avoid when the map comes from your own server.
From OpenStreetMap. The data is published under the Open Database License, is free to use, and asks for attribution in return — which sits beneath every map.
Every layer is addressable on its own: road classes, water, green space, buildings, rail. Colour, stroke weight and dash pattern for each live in the style file. The four presets above are examples, not a menu — your palette gets entered, not picked.
It depends on scope: a single location is a small item, several branches with their own styling is a project. Tell me what you need to show and you get a number instead of a range.
Usually yes. It needs somewhere to put the file and a place where the map may be drawn. Whether that works in your system is faster to check than to speculate about here.
Send me the address and what the map is for — directions, catchment area, branch network. You get a draft in your palette before we talk money.