Agoda Scraper is a free and open-source scraper that gets you unlimited detailed Agoda data for free.
- 🏨 Full details on 6M+ hotels & homes — every room with live rates, guest scores, facilities, policies & photos
- 🔍 Live prices in 7,600 destinations — search any city, area or landmark with 12 filters & 5 sort orders
- ⭐ Guest reviews in 35 languages — Agoda & Booking.com: scores, full text, pros & cons, topics & hotel replies
- 📍 Autocomplete in 50 locales — cities, areas, landmarks & hotels with hotel counts & a ready search key
{
"id": 185945,
"name": "Marina Bay Sands",
"link": "https://www.agoda.com/marina-bay-sands/hotel/singapore-sg.html",
"type": "Hotel",
"stars": 5.0,
"location": { "address": "10 Bayfront Avenue", "area": "Marina Bay", "city": "Singapore", "latitude": 1.2836209535598755, "longitude": 103.86072540283203 },
"rating": {
"score": 8.8,
"score_text": "Excellent",
"count": 48704,
"grades": { "cleanliness": { "score": 9.3, "city_average": 8.7 }, "location": { "score": 9.2, "city_average": 8.8 } },
"sources": [{ "source": "Agoda", "count": 35452 }, { "source": "Booking.com", "count": 11465 }]
},
"price": { "currency": "USD", "cheapest_per_night": 663.96 },
"check_in_from": "03:00 PM",
"check_out_until": "11:00 AM",
"rooms": [
{
"name": "Sands Premier Double Queen Room",
"size_sqm": 45.0,
"beds": "2 queen beds",
"rooms_left": 11,
"offers": [
{
"price": { "per_night": 663.96, "per_night_with_taxes": 796.08, "before_discount_per_night": 2655.83, "discount_percent": 75 },
"is_free_cancellation": true,
"cancellation": { "title": "Cancel for free before December 8, 2026" },
"is_pay_later": true,
"benefits": ["Free WiFi", "Free entry to Infinity Pool", "Free entry to Sands Sky Park"]
}
]
}
],
"images": [{ "link": "https://pix8.agoda.net/hotelImages/185945/0/0387b3a605bdc9d07be4790f2f7bfd7a.jpeg?ce=2&s=1024x768", "caption": "Exterior view" }]
}Trimmed for readability.
1️⃣ Clone and install:
git clone https://github.com/omkarcloud/agoda-scraper
cd agoda-scraper
python -m pip install -r requirements.txt2️⃣ Start the API:
python run.py3️⃣ Get your first data:
curl "http://localhost:8000/hotels/details?hotel=185945"{
"id": 185945,
"name": "Marina Bay Sands",
"link": "https://www.agoda.com/marina-bay-sands/hotel/singapore-sg.html",
"stars": 5.0,
"rating": { "score": 8.8, "score_text": "Excellent", "count": 48704 },
"price": { "currency": "USD", "cheapest_per_night": 663.96 },
"check_in_from": "03:00 PM",
"check_out_until": "11:00 AM",
"rooms": [
{
"name": "Sands Premier Double Queen Room",
"size_sqm": 45.0,
"beds": "2 queen beds",
"offers": [
{ "price": { "per_night": 663.96, "per_night_with_taxes": 796.08 }, "is_free_cancellation": true, "is_pay_later": true }
]
}
]
}All 4 endpoints are now live at http://localhost:8000.
No proxy needed — Agoda served every endpoint to a home connection and a cloud server alike. If you ever see 502 "blocked" errors at high volume, set AGODA_PROXY (AGODA_PROXY=http://user:pass@host:port python run.py).
4 endpoints cover everything you need.
| Endpoint | Path | Returns |
|---|---|---|
| Hotel Details | /hotels/details |
Every room with live rates, scores, facilities, policies and photos |
| Autocomplete | /places/autocomplete |
Cities, areas, landmarks and hotels with a ready search key |
| Search Hotels | /hotels/search |
45 properties per page with live prices, stars and scores |
| Hotel Reviews | /hotels/reviews |
Agoda and Booking.com reviews, 20 per page, filterable by topic |
The same API is published on RapidAPI, and its playground is the easiest place to try parameters and see raw responses. Once a request looks right, run it locally for unlimited free data.
- Subscribe to the free plan — 1,000 calls/month, no credit card.
- Try the endpoints in the playground — every param is pre-filled, so you see real data in one click.
- Copy the generated code and replace
https://best-agoda-scraper-free-1000-calls.p.rapidapi.comwithhttp://localhost:8000. It will now run against your local API.
import requests
# generated by the playground, host swapped for the local API
response = requests.get(
"http://localhost:8000/hotels/details",
params={"hotel": "185945"},
)
print(response.json())You're a developer — we know how hard completing a project can be. So we offer full support: just message us and we'll reply ✅ with a solution within 1 working day.
- Google Maps Scraper (3,100+ GitHub Stars) — type "dentists in New York", get every business as a ready-to-call lead list: phones, emails, websites & reviews. Up to 100K free leads/month.
- G2 Scraper — G2 product details, ratings & AI-found contacts
- Website Email Contact Scraper — emails, phones & socials from any website
- AliExpress Scraper — live product details, SKU variants, stock & shipping
- Booking Scraper — Booking.com hotels: prices, ratings, rooms & amenities
- Etsy Scraper — Etsy products: prices, discounts, shops & variations
- Hotels Com Scraper — Hotels.com hotels: live prices, every room & rate, reviews and daily price calendars
⭐ Love It? Star It ⭐!
Star the repo ⭐ and become my star hero!
It's just 1 click, but it means the world to me.


