Image credits & licences
Every third-party photograph on this site, with its photographer, licence, and source. Attribution isn't a formality — CC BY and CC BY-SA require it, and we'd rather over-credit than under-credit.
How a photograph gets onto this site
The pipeline is deliberately boring, because attribution errors are usually process failures rather than judgement calls. Five steps, in order, and a photograph that fails any one of them is dropped rather than argued about:
- Search Wikimedia Commons for candidate photographs of the city, using the Commons API rather than a web image search, so every result arrives with its licence metadata attached.
- Reject on licence first. Anything carrying an NC or ND clause is discarded before a human ever looks at it. So is anything with no machine-readable licence field at all — an unstated licence is not a permissive one.
- Capture the attribution fields the licence requires: the photograph’s title, the photographer’s name, a link to their Commons profile, the licence name, the licence deed URL, and the source file page. All six are stored, not just the ones that fit in a caption.
- A human reviews the shortlist. The script can tell you a photograph is correctly licensed. It cannot tell you the photograph is of the right city, is not a decade out of date, or is not somebody’s holiday snapshot with a skyline in the corner.
- Crop, resize and publish with credit on the city page it illustrates and again in the table below. The build converts each image to WebP at three widths; the original stays on Commons, where the licence points.
Why we reject NC and ND
A NonCommercial clause bars use in a commercial context. This site sells a service, so every page on it is commercial, including the ones that are purely editorial. There is no reading of NC under which a marketing site qualifies, and the fact that a lot of commercial sites use NC images anyway is not an argument, it is a description of a common infringement.
NoDerivatives is the subtler one. We crop city photographs to a fixed aspect ratio and re-encode them, and both operations produce a derivative work. A site that ships a cropped ND image has broken the licence even though it credited the photographer correctly. Filtering both clauses at the fetch step is cheaper than auditing them afterwards.
Where a photograph is CC BY-SA, the ShareAlike term travels with our cropped copy: you may reuse our version under the same licence, crediting the original photographer. The licence column below links to the exact deed for each image, because “CC BY-SA” on its own is ambiguous across versions 2.0, 2.5, 3.0 and 4.0, and the versions differ on attribution detail.
City photography
One row per image, sorted by city. The city links to the page the photograph appears on; the photograph title links to its Commons file page; the licence links to its deed. See the full list of cities we cover.
Why this page is a real table
The credits above are marked up as an actual HTML table with header cells and data cells, not as a grid of styled containers that happens to look like one. That is a deliberate choice and it is the same choice we argue for on every programmatic build we ship.
A layout built from generic containers renders identically to a sighted reader and carries almost nothing for anything else. A screen reader cannot announce which column a value belongs to. A parser extracting text for an answer engine reads the cells as loose fragments with no row to bind them to, so “CC BY-SA 4.0” arrives detached from the photograph it licenses. The attribution is on the page and still fails to travel.
This matters beyond accessibility, which would be reason enough. Machine readability is a build-time property rather than an editorial one: the text you can see is not the text a machine can use, and the gap between the two is invisible from a browser. A page can look finished, read well, and hand an extractor nothing. It is the least glamorous half of the discipline we sell, and it is the half most sites skip.
The same reasoning governs the rest of the site. Every page carries JSON-LD describing what it is and who published it, the photography here is credited in markup a crawler can follow rather than in an image caption, and the AI crawler rules in our robots.txt name each vendor's documented agents so an answer engine can reach any of it. None of that improves how the page looks. All of it decides whether the page can be quoted.
Everything else you can see
The logo, the wordmark and the diagrams at the top of each article are ours, generated at build time and owned by Neul Labs Limited. Author portraits are supplied by the people in them. The share-of-voice chart on the home page is illustrative and labelled as such; the real figures live on our numbers, which publishes each audit run including the one where our own share fell. Nothing on this site uses stock photography of people, because we would then be crediting a model release rather than a photographer, and the licence trail stops being checkable.
This page exists for the same reason the evidence register and the measurement methodology do. A studio that asks buyers to trust its numbers should be checkable on the small things as well as the large ones, and image attribution is the smallest thing on the site.
All city photography via Wikimedia Commons. Author avatars are supplied by the individuals pictured. Logo, wordmark and illustrations are © Neul Labs Limited. Spotted an attribution error? Email contact@wordofgpt.com and we’ll correct it immediately.