← Use cases

Use case

Every hotel in San Francisco with phone, address and email

All hotels Google Hotels lists in San Francisco, priced for a 2-night stay, with phone, street address, website and the hotel's own email.

Say you’re organising a two-day conference in San Francisco and need a room block. Attendees will want options at several price points, so you plan to contact every hotel in the city about a group rate, not just the five you already know. By Friday you want a sheet with one row per hotel: name, stars, rating, what a night costs, a phone number, a street address and, where the hotel publishes one, an email to write to.

The manual way, and what it costs

The public search form on Google Hotels
Google Hotels — the official search. One record at a time.

Google Hotels is free and good. Search “hotels in San Francisco” with your dates and you get prices, stars and ratings at a glance. If you only need ten hotels near the venue, do that: open each one, copy its phone and address, and you’re done in half an hour.

It stops being reasonable at city scale. The list shows a phone number only for its first page of hotels and never shows a street address, so every hotel past the first page is a click, a copy and a paste. There’s no export button. From page two on, the hotel results fill with vacation rentals, which you have to skip by eye. Emails aren’t on Google at all; you’d visit each hotel’s website and hunt for a contact page. For 400-plus hotels, that’s days of work.

The faster way

Google Hotels Scraper: Prices, Rates, Phone & Email by City/ZIP does the same search once and hands back every row at once.

{
  "queries": [
    "San Francisco, CA"
  ],
  "nights": 2,
  "propertyType": "hotels",
  "maxResults": 1000,
  "includeDetails": true,
  "includeEmails": true
}

This input asks for the whole city. maxResults: 1000 sits above what Google lists for one city, so nothing is cut off. propertyType: "hotels" drops the vacation rentals you’d otherwise skip by hand. nights: 2 with no check-in date prices a two-night stay starting 14 days from today. Set checkIn to your event’s first night if you want the event’s own prices. includeDetails opens each hotel’s Google page for the phone and address, and includeEmails visits each hotel’s website for an inbox. Both are on by default; they’re written out here so you can see what you’re paying for.

What comes back

{
  "name": "Hotel Griffon",
  "property_type": "hotel",
  "hotel_class": 3,
  "rating": 4.2,
  "review_count": 911,
  "rating_breakdown": {
    "5": 512,
    "4": 228,
    "3": 98,
    "2": 23,
    "1": 50
  },
  "price_per_night": 86.82,
  "currency": "USD",
  "check_in": "2026-11-20",
  "check_out": "2026-11-22",
  "deal": "20% less than usual",
  "phone": "(415) 495-2100",
  "address": "155 Steuart St, San Francisco, CA 94105",
  "website": "http://www.hotelgriffon.com/",
  "email": null,
  "emails": [],
  "latitude": 37.7927002,
  "longitude": -122.3923344,
  "check_in_time": "3:00 PM",
  "check_out_time": "11:00 AM",
  "nearest_airport": "San Francisco International Airport",
  "airport_drive_minutes": 25,
  "booking_rates": [],
  "entity_id": "ChgI5NCc0fWC5K2LARoLL2cvMXZ2MnNnZzYQAQ",
  "google_hotel_url": "https://www.google.com/travel/hotels/entity/ChgI5NCc0fWC5K2LARoLL2cvMXZ2MnNnZzYQAQ",
  "query": "San Francisco, CA",
  "source_url": "https://www.google.com/travel/hotels/entity/ChgI5NCc0fWC5K2LARoLL2cvMXZ2MnNnZzYQAQ"
}
FieldExample valueMeaning
nameHotel GriffonThe property’s name on Google Hotels
property_typehotelhotel (hotels, motels, inns, resorts) or vacation_rental
hotel_class3Star class, 1 to 5 (null for unrated properties)
rating4.2Google guest rating, 1 to 5
review_count911Number of Google reviews
rating_breakdown{"5": 512, "4": 228, "3": 98, "2": 23, "1": 50}Reviews per star, 5 to 1

For the room-block job, the columns that matter are email and phone (who to contact), plus hotel_class and price_per_night (which tier the hotel sits in). In a run on 2026-10-31, priced for 20 to 22 November 2026, San Francisco returned 419 hotels: 419 with a street address, 389 with a phone and 60 with an email found on the hotel’s own website. Those 60 are your email list, and the phone column covers almost everyone else as your call list. airport_drive_minutes is worth a column in the attendee guide.

What you’d do with it

Export the dataset to CSV, sort it by hotel_class, and split it in two: rows with an email go into a mail merge asking for a group rate on your dates, and rows with only a phone go to whoever makes calls. Keep google_hotel_url in the sheet so anyone can check the hotel before replying to a quote. Once rates come back, price_per_night gives you a baseline to judge each offer against.

Worth knowing

  • Prices are a snapshot. They’re what Google Hotels shows when the run happens, in US dollars, for two adults, and they change by the hour.
  • Not every hotel has a price. A hotel with no rate on your dates comes back with no price: 173 of the 419 in San Francisco for those nights.
  • Chain hotels give you no email. The email lookup reads only the hotel’s own public website, up to 4 pages. It doesn’t guess or verify addresses, and it skips chain brand sites, which publish no inbox for a single property. For chain hotels, the phone is your way in.
  • A whole state is too big for one search. A city comes back whole, but a state stops at about 600 properties, so search it county by county.

Run it yourself: How to run Google Hotels Scraper: Prices, Rates, Phone & Email by City/ZIP walks the whole thing step by step.

This actor has one use-case article so far. For the group dinner on the conference’s first night, Restaurant Leads Scraper builds the same kind of list for restaurants near the venue. If you already have hotel websites and only need their contacts, Business Email, Phone & Contact Details Scraper reads them straight from each site.

Last updated 2026-10-31