Portico

About

Portico maps the luxury and premium hotel brands of the major hotel groups — which brands belong to which group, and where in the world each brand operates.

Coverage note: hotel listings are derived from OpenStreetMap and curated brand data. Counts shown are what Portico currently lists, not necessarily a brand's full portfolio.

Why I built this

I love to travel, and whenever I plan a trip I catch myself daydreaming about the hotels I hope to stay at someday. Yet there are surprisingly few places to casually browse which brands belong to which hotel groups, and where in the world each one operates. Wanting to know those dream hotels a little better, I built Portico as a place to search, compare, and get a bird's-eye view of the world's hotel brands.

Data sources

License

Because Portico's database incorporates OpenStreetMap data, the database and everything served from the public API is made available under the Open Database License (ODbL) 1.0. If you use this data, you must attribute OpenStreetMap contributors and share any derived database under the same licence. Open Database License (ODbL) 1.0

Trademarks

Portico is an independent reference site. Brand names are trademarks of their respective owners; Portico is not affiliated with, endorsed by, or sponsored by any hotel group or brand.

API terms

The API is free, requires no authentication, and is provided without any warranty. It may change or become unavailable at any time. Please keep request volume reasonable and cache responses where you can.

Tech stack

LayerTechnology
RuntimeBun
FrontendHono JSX (SSR) + React 19 + Vite 7
StylingTailwind CSS v4
MapMapLibre GL JS
BackendHono on Cloudflare Workers
DatabaseCloudflare D1 (SQLite)
Data pipelineBun scripts + OpenStreetMap / Nominatim / Natural Earth
QualityVitest / Biome / tsc / GitHub Actions
HostingCloudflare Workers + Custom Domain