
에어비엔비에서 아무런 검색값 없이 검색하게 되면 내 근처의 숙소 리스트를 보여줍니다.
그런데 저는 로그인을 하지 않았고, 위치 허용 여부를 선택한 적 없습니다.
그런데 어떻게 내 근처의 숙소 리스트를 보여줄까요?
에어비엔비의 경우 URL 파라미터의 값으로 상태관리를 주로 하는 것 같아보였습니다. 그래서 URL을 분석해보았습니다.
Airbnb는 검색 조건을 모두 GET Query로 노출시키는 방식이며,
날짜/인원 선택에 따라 "검색 모드, 좌표, 달력 사용 여부, 장기 숙박 옵션, 필터 UI 상태" 같은 메타 정보까지 URL에 포함됩니다.
https://www.airbnb.co.kr/s/homes?
refinement_paths[]= /homes
&location_search=NEARBY
&source=structured_search_input_header
&search_type=unknown
location_search=NEARBY 라고 보입니다.https://www.airbnb.co.kr/s/homes?
refinement_paths[]= /homes
&location_search=NEARBY
&source=structured_search_input_header
&search_type=unknown
&flexible_trip_lengths[]=one_week
¢er_lat=37.45
¢er_lng=126.73
&monthly_start_date=2025-11-01
&monthly_length=3
&monthly_end_date=2026-02-01
&search_mode=regular_search
&price_filter_input_type=2
&channel=EXPLORE
&date_picker_type=calendar
&checkin=2025-11-01
&checkout=2025-11-04
&adults=2
&drawer_open=true
center_lat, center_lng 값과 location_search=NEARBY 값이 보입니다.location_search=NEARBY: 위치 검색 옵션이 “내 주변” 모드라는 의미center_lat , center_lng: 실제 계산된 지도 중심 좌표https://www.airbnb.co.kr/s/homes?
refinement_paths[]= /homes
&location_search=NEARBY
&source=structured_search_input_header
&search_type=user_map_move
&flexible_trip_lengths[]=one_week
&monthly_start_date=2025-11-01
&monthly_length=3
&monthly_end_date=2026-02-01
&search_mode=regular_search
&price_filter_input_type=2
&channel=EXPLORE
&date_picker_type=calendar
&checkin=2025-11-01
&checkout=2025-11-04
&adults=2
&price_filter_num_nights=3
&ne_lat=37.61692080810032
&ne_lng=126.80809670588201
&sw_lat=37.255288467379465
&sw_lng=126.60219879834523
&zoom=10.876819265101252
&zoom_level=10.876819265101252
&search_by_map=true
ne_lat, ne_lng, sw_lat, sw_lng 4개의 좌표도 추가되었습니다. 이건 현재 화면에 보이는 사각형 영역(Bounding Box)를 의미합니다.zoom / zoom_level: 지도 확대 수준 (클수록 좁은 범위)URL에서 확인했다시피, 저는 위치 정보를 허용한적이 없는데 지도 중심 좌표가 들어간 것을 확인하였습니다. 그리고 상황별로 위치 좌표를 사용하는 의미와 방식이 다릅니다.
정리해보자면,

Airbnb에서 위치 권한을 허용하지 않았는데도 center_lat / center_lng같은 좌표들이 나타나는 이유는 실제로 내부에서 IP 기반 GeoIP 위치 값을 받아오기 때문입니다.
즉, geolocation API가 아니어도 Airbnb는 사용자의 대략적인 지역 좌표를 추정할 수 있습니다.
1) Airbnb는 먼저 navigator.geolocation을 시도하지 않는다.
2) IP 기반 GeoIP 정보는 위도/경도를 제공한다.
IP → 서울시 관악구 주변 → lat=37.47, lng=126.95 같은 값 반환3) 검색 조건이 두 단계로 동작한다.
location_search=NEARBY 위치 검색 옵션으로 “내 주변” 검색 모드로 동작하고,center_lat & center_lng 등의 실제 계산된 지도 중심 좌표를 통해 검색합니다.이렇듯, geolocation을 허용하는 팝업이 뜨지 않고 Airbnb는 사용자 경험을 위해 좌표가 가능한 한 항상 존재하도록 설계했습니다.