Expedia Hotel Scraper avatar

Expedia Hotel Scraper

Pricing

from $0.50 / 1,000 results

Go to Apify Store
Expedia Hotel Scraper

Expedia Hotel Scraper

Expedia hotel scraper for prices, ratings, photos, and room-by-room pricing breakdowns. Search by destination, hotel name, or URL - no API needed. Get per-room pricing, discounts, and amenities most Expedia scrapers miss, for any property worldwide.

Pricing

from $0.50 / 1,000 results

Rating

0.0

(0)

Developer

MrDoe

MrDoe

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

6 days ago

Last modified

Share

Scrape Expedia hotel data — hotel names, star ratings, guest review scores, headline prices, strikeout discounts, photos, and full per-room-type pricing with facilities — without an Expedia account, login, or official API. The Expedia Hotel Scraper takes a destination, an Expedia hotel or search URL, an Expedia share link, or just a hotel name, and returns clean structured JSON for hotel price monitoring, rate comparison, and building your own Expedia hotel dataset or API feed.

Looking for guest reviews instead? See the companion Expedia Review Scraper.

Expedia Hotel Scraper input configuration panel

What is the Expedia Hotel Scraper?

The Expedia Hotel Scraper is an Apify Actor that collects publicly visible hotel data from Expedia.com in three ways: search resolves a destination name to a list of hotels (one row per hotel, with headline price, rating, and photos); url fetches a specific hotel URL and returns every room type that hotel sells (one row per room, each with its own price, strikeout discount, and facility list); and hotelName finds one named hotel and returns the same room-by-room breakdown. Output is one flat JSON row per hotel or room, ready for Excel, Google Sheets, or an API integration.

How to scrape Expedia hotel prices

  1. Choose a mode: Search by destination, Fetch by URL, or Find by hotel name.
  2. Fill the matching field — destination (search), startUrls (URL), or hotelName (name).
  3. Set checkIn / checkOut, guests (adults / children / rooms), currency, and any price / star / sort filters.
  4. Set maxItems — the hard cap on total records.
  5. Click Start. Export as JSON, CSV, Excel, or via the dataset API.

What data can I extract from Expedia?

FieldTypeDescription
modestringsearch or rooms — the shape of the row
placeNamestringHotel name
hotelIdstringExpedia's internal property ID
hotelUrlstringCanonical Expedia hotel page URL
hotelOverallRatingnumberGuest rating, 0–10
hotelRatingLabelstringRating label, e.g. Wonderful, Excellent
hotelTotalReviewsintegerTotal number of guest reviews
providerstringAlways expedia
scrapedAtstringISO timestamp of collection
extra.starRatingnumberHotel class, 1–5 (when Expedia publishes it)
extra.priceFromnumberHeadline nightly price (numeric)
extra.priceFormattedstringFormatted price, e.g. $420 nightly
extra.priceStrikeoutstringPre-discount price when shown
extra.currencystringCurrency code for prices in the row
extra.imagesarrayGallery image URLs (hotel cards)
extra.checkIn / extra.checkOut / extra.adultsstring / intSearch context used
extra.roomNamestringRoom type name (room rows), e.g. Deluxe Room, City View
extra.facilitiesarrayBed configuration, size, view, WiFi, cancellation terms (room rows)
extra.hotelCategoryRatingsobjectSub-ratings such as Cleanliness, Service
extra.hotelNameMatchobjectSet only in hotelName mode — the query, matched name, confidence score, and a note when the match was not exact

Input example

{
"mode": "url",
"startUrls": [
{ "url": "https://www.expedia.com/Dubai-Hotels-Hilton-Garden-Inn-Dubai-Mall-Of-The-Emirates.h12949919.Hotel-Information" }
],
"checkIn": "2026-09-10",
"checkOut": "2026-09-13",
"adults": 2,
"currency": "USD",
"maxItems": 20,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Output example

One row per room type the hotel sells for the dates:

[
{
"mode": "rooms",
"placeName": "Hilton Garden Inn Dubai Mall Of The Emirates",
"hotelId": "12949919",
"hotelUrl": "https://www.expedia.com/Dubai-Hotels-Hilton-Garden-Inn-Dubai-Mall-Of-The-Emirates.h12949919.Hotel-Information",
"hotelOverallRating": 9.2,
"hotelRatingLabel": "Wonderful",
"hotelTotalReviews": 1843,
"provider": "expedia",
"scrapedAt": "2026-09-04T07:30:00.000Z",
"extra": {
"roomName": "Deluxe Room, City View",
"facilities": ["City view", "355 sq ft", "Sleeps 3", "1 King Bed", "Free WiFi"],
"priceFrom": 420,
"priceFormatted": "$420 nightly",
"priceStrikeout": "$600",
"currency": "USD",
"checkIn": "2026-09-10",
"checkOut": "2026-09-13",
"adults": 2,
"starRating": 5,
"hotelCategoryRatings": { "Cleanliness": 9.4, "Service": 9.3 },
"hotelNameMatch": null
}
}
]

Expedia Hotel Scraper sample output dataset

What you get vs. browsing Expedia manually

TaskManually on ExpediaWith the Expedia Hotel Scraper
Compare every hotel in a city for the same datesOpen a tab per hotelOne search run, one dataset
See every room type and price for one hotelScroll the room listOne url run, one row per room
Look up a hotel you only know by nameSearch, guess the right resulthotelName mode with a confidence flag
Track a hotel's room rates over timeRe-check the page dailySchedule the Actor, diff the dataset
Get the data into Excel / a databaseManual copy-pasteBuilt-in JSON / CSV / Excel + dataset API

How to use it (step by step)

  1. Pick the modesearch to compare across a city, url for one hotel's full room list, hotelName when you don't have a URL.
  2. Provide the input for that mode.
  3. Set dates, guests, currency, and filters.
  4. Size maxItems for room mode — a hotel with 7 room types uses up to 7 records on its own.
  5. Keep the residential proxy on — it is required.
  6. Run and export — dataset tab or GET /v2/datasets/{id}/items.

Pricing

Priced per result (per hotel card or per room record). There is no artificial ceiling on maxItems — raise it as high as your use case needs. Failed lookups are not charged. Exact rates are on the Actor's Pricing tab. [PRICING TBD]

FAQ

What is the Expedia Hotel Scraper? An Apify Actor that extracts publicly available Expedia hotel data — hotel cards from destination search, and full per-room-type pricing and facilities from a specific hotel — as structured JSON, CSV, or Excel.

Do I need an Expedia account, API key, or login? No.

What inputs are accepted? A destination name, an Expedia hotel or search URL, an Expedia share/deeplink (expe.onelink.me, expe.app.link, trip.expedia.com), or a hotel name.

How does hotelName mode handle an imperfect match? If nothing matches closely enough, the run ends with zero records and a message explaining why — it never returns an unrelated hotel. A close-but-imperfect match is used and flagged in extra.hotelNameMatch on every row.

Why are some fields empty for a hotel? Not every Expedia property publishes every field (e.g. an official star rating). The Actor never fabricates data — a missing field means Expedia does not expose it for that listing.

Can I set my own check-in / check-out dates? Yes — checkIn and checkOut, plus guest counts and room count.

Is a proxy required? Yes — proxyConfiguration must be enabled (residential recommended).

What export formats are available? JSON, CSV, Excel, HTML table, RSS, or the Apify dataset API.

Is scraping Expedia legal? The Actor extracts publicly available information anyone can view in a browser. You are responsible for compliant use under Expedia's terms and the laws that apply to you. Not affiliated with Expedia.

My other travel scrapers on Apify

ActorWhat it does
Expedia Review ScraperTraveler reviews and sentiment from Expedia
Booking.com Listings ScraperHotel prices, ratings, and room types from Booking.com
Booking.com Review ScraperGuest review text and scores from Booking.com
Agoda Hotel ScraperHotel details and live city pricing from Agoda
Agoda Review ScraperGuest reviews and stay details from Agoda
Trip.com Hotel ScraperHotel prices, ratings, and best room rate from Trip.com
Trip.com Review ScraperGuest reviews and stay details from Trip.com
Google Hotels ScraperHotel prices, ratings, and coordinates from Google Hotels
TripAdvisor Hotel ScraperHotel details plus per-OTA room rates from TripAdvisor
TripAdvisor Review ScraperFull guest reviews and sub-ratings from TripAdvisor
Airbnb Search ScraperListings, prices, and hosts from Airbnb search
Airbnb Room Reviews ScraperReviews, ratings, and host replies from Airbnb listings
Airbnb & Vrbo Revenue and Occupancy EstimatorEstimated revenue and occupancy for short-term rentals

Expedia Hotel Scraper logo


Independent tool, not affiliated with or endorsed by Expedia. Accesses only publicly available data. Report bugs or request features on the Issues tab.