Agoda Hotel Rates Scraper avatar

Agoda Hotel Rates Scraper

Pricing

from $0.99 / 1,000 results

Go to Apify Store
Agoda Hotel Rates Scraper

Agoda Hotel Rates Scraper

Scrape Agoda hotels by destination or hotel ID: name, star rating, review score and count, live nightly price (with/without tax, before-discount), coordinates, address, and room offers. Pick your dates, guests, and currency. No login.

Pricing

from $0.99 / 1,000 results

Rating

0.0

(0)

Developer

Farhan Febrian Nauval

Farhan Febrian Nauval

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

11 days ago

Last modified

Share

Extract hotels and live nightly prices from Agoda — by destination or by specific hotel. For every hotel you get its name, star rating, guest review score and review count, exact coordinates, address, the cheapest available price (with and without taxes/fees, plus the before-discount price), and the cheapest room offers with their cancellation policy. Choose your own check-in/check-out dates, number of guests, and currency.

Why use this actor

  • No account, no login, no API key required.
  • Real, dated prices — the price for the exact stay dates, guests, and currency you ask for, not a vague "from" figure.
  • Two ways to search — sweep every hotel in a destination, or track specific hotels by their Agoda property ID (ideal for rate-parity and price monitoring over time).
  • Rich structured fields — star rating, guest review score and count, latitude/longitude, full address, and per-room offers.
  • Any currency — prices come back in the currency you choose (USD, EUR, SGD, GBP, …).
  • Stable JSON output ready for spreadsheets, databases, dashboards, or pipelines. Export to JSON, CSV, or Excel.
  • Runs on a schedule with automatic retries — no scrapers, browsers, or blocks to babysit.

How it works

  1. Choose a mode: Search a destination, or pull Property detail + rates for specific hotel IDs.
  2. Enter your destinations (city or place names) or hotel property IDs, your check-in / check-out dates, guests, and currency.
  3. The actor matches each place name to the right Agoda destination automatically, then collects every hotel with its live price and review data.
  4. Each hotel becomes one clean row in your dataset, which you can download or feed into another system.

You do not manage any of the retrieval, retries, or formatting — just the inputs above.

Input

Search mode

{
"mode": "search",
"destinations": ["Singapore"],
"checkIn": "2026-08-10",
"checkOut": "2026-08-11",
"adults": 2,
"children": 0,
"rooms": 1,
"currency": "USD",
"fetchRooms": true,
"maxItems": 100,
"maxItemsPerSearch": 200,
"proxyConfiguration": { "useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"] }
}

Property mode (detail + rates for specific hotels)

{
"mode": "property",
"propertyIds": ["185945"],
"checkIn": "2026-08-10",
"checkOut": "2026-08-11",
"adults": 2,
"children": 0,
"rooms": 1,
"currency": "EUR",
"fetchRooms": true
}
FieldTypeDescription
modestringsearch (find hotels in a destination) or property (detail + rates for specific hotel IDs).
destinationsarrayCity / place names to search, e.g. Singapore, Tokyo, Bali. Search mode.
searchUrlsarrayOptional Agoda search URLs that contain a city id, e.g. https://www.agoda.com/search?city=4064. Search mode.
propertyIdsarrayAgoda numeric hotel IDs, e.g. 185945 (Marina Bay Sands). Property mode.
checkInstringCheck-in date YYYY-MM-DD. Defaults to ~30 days out.
checkOutstringCheck-out date YYYY-MM-DD. One night after check-in by default.
adultsintegerAdult guests to price for (default 2).
childrenintegerChildren in the party (default 0).
roomsintegerRooms to price (default 1).
currencystringCurrency code the prices are returned in, e.g. USD, EUR, SGD.
fetchRoomsbooleanInclude the cheapest room offers (price + cancellation policy) on each record.
maxItemsintegerOverall cap on hotel records for the run (0 = no limit).
maxItemsPerSearchintegerCap per destination. Agoda serves 45 hotels per page.
proxyConfigurationobjectResidential proxy recommended for stable, geo-consistent results.

Output

Search mode — one row per hotel

{
"_input": "Singapore",
"_source": "S1-citysearch",
"_scrapedAt": "2026-07-09T20:36:50Z",
"recordType": "HOTEL",
"propertyId": 335555,
"hotelName": "Dorsett Changi City Singapore",
"starRating": 4.0,
"reviewScore": 8.6,
"reviewCount": 7860,
"latitude": 1.3343963623046875,
"longitude": 103.96414184570312,
"address": "Changi, Singapore",
"city": "Singapore",
"cityId": 4064,
"propertyType": "Hotel",
"url": "https://www.agoda.com/dorsett-changi-city-singapore/hotel/singapore-sg.html",
"checkIn": "2026-08-10",
"checkOut": "2026-08-11",
"occupancy": { "adults": 2, "children": 0, "rooms": 1 },
"currency": "USD",
"isAvailable": true,
"soldOut": false,
"cheapestPrice": 164.67,
"priceInclusive": 197.43,
"priceExclusive": 164.67,
"beforeDiscountPrice": 164.67,
"rooms": [
{
"roomName": null,
"price": 164.67,
"priceInclusive": 197.43,
"beforeDiscountPrice": 164.67,
"currency": "USD",
"cancellation": "NonRefundable",
"availableRooms": 65,
"supplierId": 332
}
]
}

Property mode — one row per hotel (detail + rates)

{
"_input": "185945",
"_source": "S1-property",
"_scrapedAt": "2026-07-09T20:37:12Z",
"recordType": "PROPERTY",
"propertyId": 185945,
"hotelName": "Marina Bay Sands",
"starRating": 5.0,
"reviewScore": 8.9,
"reviewCount": 48807,
"latitude": 1.2836209535598755,
"longitude": 103.86072540283203,
"address": "10 Bayfront Avenue, Marina Bay, Singapore",
"city": "Singapore",
"cityId": 4064,
"propertyType": "Hotel",
"url": "https://www.agoda.com/marina-bay-sands/hotel/singapore-sg.html",
"checkIn": "2026-08-10",
"checkOut": "2026-08-11",
"occupancy": { "adults": 2, "children": 0, "rooms": 1 },
"currency": "EUR",
"isAvailable": true,
"soldOut": false,
"cheapestPrice": 744.45,
"priceInclusive": 892.60,
"priceExclusive": 744.45,
"beforeDiscountPrice": 744.45,
"rooms": [
{
"roomName": null,
"price": 744.45,
"priceInclusive": 892.60,
"beforeDiscountPrice": 744.45,
"currency": "EUR",
"cancellation": "FreeCancellation",
"availableRooms": 50,
"supplierId": 332
}
]
}
FieldTypeDescription
propertyIdintegerAgoda's unique hotel ID.
hotelNamestringHotel name.
starRatingnumberOfficial star rating (1–5).
reviewScorenumberGuest review score out of 10.
reviewCountintegerNumber of guest reviews.
latitude / longitudenumberHotel coordinates.
addressstringStreet/area, city, country.
city / cityIdstring / integerCity name and Agoda city ID.
propertyTypestringe.g. Hotel, Resort, Apartment.
urlstringAgoda hotel page.
checkIn / checkOutstringThe dates the price applies to.
occupancyobjectAdults, children, rooms the price is for.
currencystringCurrency of all prices in the record.
isAvailable / soldOutbooleanAvailability for the requested stay.
cheapestPricenumberCheapest nightly price, excluding taxes/fees.
priceInclusivenumberCheapest nightly price including taxes/fees.
priceExclusivenumberCheapest nightly price excluding taxes/fees.
beforeDiscountPricenumberNightly price before any discount.
roomsarrayCheapest available room offers (price, taxes, cancellation policy, rooms left). Present when fetchRooms is on.

Notes & limits

  • Prices are per night for the requested dates, guests, and rooms, in your chosen currency.
  • Search returns 45 hotels per page; raise maxItemsPerSearch for more, or use several destinations for volume.
  • A small share of hotels can show as sold out (no price) for a given date/occupancy — those rows carry isAvailable: false.
  • In search results, room offers reflect the cheapest available option, so roomName may be blank; use property mode for a specific hotel.
  • For rate-parity / price tracking, run property mode on a schedule with the same propertyIds across different dates — each run captures that day's live price.
  • Residential proxy (any country) is recommended for the most consistent results.

Other travel actors

ActorWhat it does
Booking.com Hotels ScraperHotel search results from Booking.com by destination and dates.
Agoda Hotel Rates ScraperThis actor — Agoda hotels, live rates, and review data.