Agoda Hotels Scraper
Pricing
from $0.45 / 1,000 hotel results
Agoda Hotels Scraper
Scrape public Agoda hotel listings, prices, ratings, amenities, and property URLs by destination.
Pricing
from $0.45 / 1,000 hotel results
Rating
0.0
(0)
Developer
Hanna Nosova
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
15 hours ago
Last modified
Categories
Share
Scrape public Agoda hotel search result pages and export hotel/property listings with prices, ratings, review counts, locations, amenities, and Agoda property URLs. Use it for travel market research, price monitoring, destination analysis, and hotel lead collection.
Input recipes
{"searchUrls": [{ "url": "https://www.agoda.com/search?city=9395&adults=2&rooms=1" }],"maxItems": 20,"currency": "USD","language": "en-US"}
Or build a search from an Agoda city ID:
{"destination": "Bangkok","cityId": "9395","adults": 2,"rooms": 1,"maxItems": 20}
Output
Each dataset item represents one Agoda hotel/property listing and includes fields such as name, price, currency, reviewScore, reviewCount, location, amenities, url, and source search metadata.
Pricing and cost expectations
This Actor uses pay-per-event pricing on Apify: a small run-start event plus one hotel-result event per saved listing. Local development runs may show charge warnings because local runs do not use platform pay-per-event billing.
Notes
Agoda pages can vary by country, date, currency, and availability. If a search returns no results, try a less restrictive public Agoda search URL or enable Apify Proxy for repeated/larger runs.
Example inputs
Bangkok hotels from a public Agoda search URL
Use a copied Agoda search URL when you already have the destination and guest filters selected in the browser.
{"searchUrls": [{ "url": "https://www.agoda.com/search?city=9395&adults=2&rooms=1" }],"maxItems": 50,"currency": "USD"}
City ID search with dates
Use Agoda city IDs for repeatable destination tracking.
{"destination": "Bangkok","cityId": "9395","checkIn": "2026-08-15","checkOut": "2026-08-17","adults": 2,"rooms": 1,"maxItems": 30}
API usage
You can run the Actor from the Apify API or Apify client libraries with the same JSON input shown above. After the run finishes, read the default dataset to get one item per scraped Agoda hotel/property listing.
Node.js ApifyClient example
import { ApifyClient } from 'apify-client';const client = new ApifyClient({ token: process.env.APIFY_TOKEN });const run = await client.actor('fetch_cat/agoda-hotels-scraper').call({searchUrls: [{ url: 'https://www.agoda.com/search?city=9395&adults=2&rooms=1' }],maxItems: 20,});const { items } = await client.dataset(run.defaultDatasetId).listItems();console.log(items);
Python ApifyClient example
from apify_client import ApifyClientclient = ApifyClient('YOUR_APIFY_TOKEN')run = client.actor('fetch_cat/agoda-hotels-scraper').call(run_input={'searchUrls': [{'url': 'https://www.agoda.com/search?city=9395&adults=2&rooms=1'}],'maxItems': 20,})items = client.dataset(run['defaultDatasetId']).list_items().itemsprint(items)
cURL example
curl -X POST "https://api.apify.com/v2/acts/fetch_cat~agoda-hotels-scraper/runs?token=$APIFY_TOKEN" \-H 'Content-Type: application/json' \-d '{"searchUrls":[{"url":"https://www.agoda.com/search?city=9395&adults=2&rooms=1"}],"maxItems":20}'
Who is it for
- Travel analysts comparing hotel supply and pricing across Agoda destinations.
- Revenue managers monitoring public hotel listings for a market or competitor set.
- Data teams enriching destination dashboards with Agoda property names, prices, ratings, and locations.
- Agencies and researchers collecting public accommodation inventory for reporting.
MCP
This Actor can be used from Apify integrations that expose Actors as tools, including MCP-compatible workflows. Provide the same JSON input you would use in the Apify Console, run the Actor, and consume the default dataset as structured hotel listing records.
Add the Apify MCP server to Claude Desktop or Claude Code with your Apify token:
$claude mcp add apify -- npx -y @apify/actors-mcp-server --actors fetch_cat/agoda-hotels-scraper
Example MCP server configuration:
{"mcpServers": {"apify": {"command": "npx","args": ["-y", "@apify/actors-mcp-server", "--actors", "fetch_cat/agoda-hotels-scraper"],"env": {"APIFY_TOKEN": "YOUR_APIFY_TOKEN"}}}}
Example prompts:
- "Run Agoda Hotels Scraper for Bangkok city ID 9395 and return 10 hotels with prices."
- "Scrape this Agoda search URL and summarize hotel names, ratings, and nightly prices."
- "Compare the locations and review scores from the Agoda dataset produced by the latest run."
Legality
This Actor is designed for publicly available Agoda search result pages. Use it responsibly, respect applicable laws and Agoda terms, and avoid collecting personal data. If your use case has compliance requirements, consult your legal team before running large-scale extraction.
FAQ
Why did my local run log a charge warning?
Local Apify runs do not use platform pay-per-event billing, so charge calls can be ignored locally. Cloud runs on the Apify platform use the Actor pricing configuration.
Why did I get fewer hotels than maxItems?
Agoda may return fewer public listings for a destination, date, room mix, or currency. Try broadening dates and guest filters, or use a public Agoda search URL that visibly contains more results.
Should I use a proxy?
For occasional small searches, direct access may work. For repeated searches or larger runs, enable Apify Proxy in the input to reduce blocking risk.
Support
Open an Apify Actor issue with your run ID, input, and what result you expected if a public Agoda search URL does not produce listings.
Best practices
Start with a small maxItems value to confirm the destination and filters return the listings you expect. For recurring monitoring, keep input dates, currency, and language consistent across runs so price and rating comparisons remain comparable.
Related actors
- Agoda Reviews Scraper
- Booking.com Hotels Scraper
- Booking Reviews Scraper