Skip to main content

Airbnb Search URL Parameters

An Airbnb search page reads its filters straight out of the URL's query string — amenities, property type, room type, bedroom/bed/bathroom minimums, price range, Superhost, dates. This is a structured reference for those parameters: the key, what kind of value it takes, a real example, and the known value sets where Airbnb uses a closed list.

The parameters CustomBNB's own search tool uses, not an exhaustive reverse-engineering of Airbnb's full API. CustomBNB only implements 4 of Airbnb's property types and 3 room types — Airbnb's own UI exposes roughly 50 property types in total, most undocumented. Where this table says a value set is “known,” it means known to us, not exhaustive.

This is documentation of URL syntax, not the search tool itself — for filtering by any of Airbnb's 500+ hidden amenity codes, use the search tool. For what each amenity code means, see the amenity code dataset.

Worked example

Combining an apartment-only filter (l2_property_type_ids[]=2), one amenity code for Hot Tub (amenities[]=25 — see the amenity dataset for the full list) and a €50–€200 nightly price range:

https://www.airbnb.com/s/Europe/homes?place_id=ChIJhdqtz4aI7UYRefD8s-aZ73I&l2_property_type_ids%5B%5D=2&amenities%5B%5D=25&price_min=50&price_max=200

License & attribution

Free to use and redistribute, for any purpose, no restrictions. A link back to custombnb.app is appreciated, not required. Suggested citation:

Source: CustomBNB (custombnb.app/data/airbnb-search-url-parameters)

Parameter reference

ParameterTypeExampleKnown valuesNotes
place_idsingle value (string)place_id=ChIJhdqtz4aI7UYRefD8s-aZ73Iany Google Places IDThe search region as a Google Places ID. CustomBNB always searches within Europe.
checkinsingle value (date, YYYY-MM-DD)checkin=2026-09-01Omitted entirely for a dateless (flexible) search, along with checkout.
checkoutsingle value (date, YYYY-MM-DD)checkout=2026-09-08Paired with checkin; both or neither.
room_types[]repeatable array (string)room_types[]=Entire home/aptEntire home/apt, Private room, Shared roomRepeat the parameter once per value to select more than one.
l2_property_type_ids[]repeatable array (integer)l2_property_type_ids[]=21=House, 2=Apartment, 8=Guest House, 4=HotelAirbnb's internal property-type IDs. CustomBNB's search tool only offers these 4 — Airbnb's own UI exposes roughly 50 property types in total, most of them undocumented.
min_bedroomssingle value (integer)min_bedrooms=20 and up
min_bedssingle value (integer)min_beds=30 and up
min_bathroomssingle value (integer)min_bathrooms=10 and up
amenities[]repeatable array (integer)amenities[]=25see the full 500+ code datasetOne of Airbnb’s numeric amenity codes. Repeat the parameter once per code to stack filters.
price_minsingle value (integer)price_min=500 and upPer-night price floor, in the currency Airbnb has resolved for the visitor.
price_maxsingle value (integer)price_max=2000 and upPer-night price ceiling.
superhostbooleansuperhost=truetruePresent and set to true to restrict to Superhost listings; omitted otherwise.

12 parameters — download the full reference above.