MakeMyTrip Hotels Scraper
Pricing
Pay per usage
MakeMyTrip Hotels Scraper
Extract hotel listings, prices, ratings, reviews, amenities, locations, room details, availability, and property information from MakeMyTrip. Get structured travel data for hotel research, price monitoring, market analysis, and competitive intelligence.
Pricing
Pay per usage
Rating
5.0
(1)
Developer
Shahid Irfan
Maintained by CommunityActor stats
1
Bookmarked
2
Total users
1
Monthly active users
7 days ago
Last modified
Categories
Share
What does MakeMyTrip Hotels Listing Scraper do?
MakeMyTrip Hotels Listing Scraper collects structured hotel listings from MakeMyTrip destination search pages. Paste one or more hotel listing URLs to extract property names, ratings, review counts, locations, coordinates, images, categories, availability signals, and direct hotel links for travel research and hospitality analysis.
The Actor accepts full MakeMyTrip listing URLs, preserves the destination and occupancy context, and removes empty values from each result. If a saved URL contains dates that have already passed, the Actor preserves the stay length and moves the search to the next available day.
Why use MakeMyTrip Hotels Listing Scraper?
- Build hotel datasets quickly - Replace manual copying with clean, structured rows ready for analysis.
- Compare destination inventory - Review property types, star ratings, guest scores, review volume, categories, and location signals across cities.
- Track listing position - Save each property's page and position for repeated visibility checks.
- Collect media and location data - Capture primary images, additional media, latitude, longitude, location labels, and hotel links when MakeMyTrip publishes them.
- Automate recurring research - Run on demand, schedule repeat collections, export datasets, or connect results to downstream tools.
- Avoid duplicate rows - Hotels are deduplicated by their MakeMyTrip hotel ID within each target search.
What hotel data can you extract from MakeMyTrip?
| Field | Description |
|---|---|
hotelId | MakeMyTrip hotel identifier |
hotelName | Property display name |
hotelUrl | Direct hotel detail URL |
sourceUrl | Listing URL supplied for the search |
listingPage | Result page where the hotel appeared |
listingPosition | Position in the collected listing sequence |
propertyType | Property type, such as hotel, resort, or apartment |
propertyLabel | Additional property label shown by MakeMyTrip |
stayType | Stay classification when available |
hotelType | MakeMyTrip hotel type value |
starRating | Hotel star classification |
starRatingType | Source or type of star rating |
hotelCategory | MakeMyTrip category label |
soldOut | Whether the listing is marked sold out |
showCallToBook | Whether the property requires a call to book |
totalRoomCount | Published room count when available |
priceDisplayMsg | Price or availability message shown on the listing |
locationName | Area or destination name |
locationType | Type of location returned for the property |
cityCode | MakeMyTrip destination city code |
countryCode | Country code used by the listing search |
countryName | Published country name |
latitude | Property latitude |
longitude | Property longitude |
overallRating | Aggregate guest rating |
ratingText | Guest rating label, such as Excellent |
formattedRatingText | Formatted rating description |
totalReviewCount | Total published review count |
totalRatingCount | Total published rating count |
ratingBreakdown | Detailed rating summary when available |
categories | Property categories and listing tags |
locationPersuasion | Location-related selling points |
persuasions | Badges and selling-point text shown on the listing |
heroImage | Primary hotel image URL |
media | Additional property media URLs and media types |
totalImageCount | Total number of published images |
travellerImageCount | Number of traveller images |
hotelMediaCount | Hotel media count |
sponsored | Sponsored placement flag when available |
appDeeplink | MakeMyTrip app link when published |
sharingUrl | Shareable property URL |
checkin | Effective check-in date in MakeMyTrip format |
checkout | Effective check-out date in MakeMyTrip format |
roomStayQualifier | Room and guest occupancy value |
searchText | Destination text used in the search |
currency | Display currency context |
Fields that are unavailable for a particular hotel are omitted instead of being saved as null or empty values.
How to use MakeMyTrip Hotels Listing Scraper
- Open a MakeMyTrip hotel search for your destination, dates, rooms, and guests.
- Copy the complete hotel listing URL from the browser.
- Add the URL to
startUrlsin the Actor input. - Set
resultsWantedand themaxPagessafety limit. - Keep residential proxy settings enabled for hosted runs.
- Run the Actor and download or integrate the resulting dataset.
Input Parameters
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
startUrls | Array | No | Dubai listing URL | One or more MakeMyTrip hotel listing URLs |
resultsWanted | Integer | No | 20 | Maximum unique hotel listings to save per URL |
maxPages | Integer | No | 2 | Maximum listing pages to collect per URL |
proxyConfiguration | Object | No | Residential proxy | Proxy settings for reliable hosted runs |
Usage Examples
Collect 20 Dubai hotel listings
Use a complete destination listing URL for the most accurate city, date, room, and guest context.
{"startUrls": [{"url": "https://www.makemytrip.global/hotels/hotel-listing/?checkin=09012026&city=CTDUB&checkout=09022026&roomStayQualifier=2e0e&locusId=CTDUB&country=UNI&locusType=city&searchText=Dubai"}],"resultsWanted": 20,"maxPages": 2}
Collect listings from multiple destinations
Each URL is processed as a separate target, and the result limit applies to each target.
{"startUrls": [{"url": "https://www.makemytrip.global/hotels/hotel-listing/?checkin=09012026&city=CTDUB&checkout=09022026&roomStayQualifier=2e0e&locusId=CTDUB&country=UNI&locusType=city&searchText=Dubai"},{"url": "https://www.makemytrip.global/hotels/hotel-listing/?checkin=09012026&city=CTSIN&checkout=09022026&roomStayQualifier=2e0e&locusId=CTSIN&country=SGP&locusType=city&searchText=Singapore"}],"resultsWanted": 20,"maxPages": 2}
Build a larger destination dataset
Increase both limits when you need more than the first result page.
{"startUrls": [{"url": "https://www.makemytrip.global/hotels/hotel-listing/?checkin=09012026&city=CTLON&checkout=09032026&roomStayQualifier=2e0e&locusId=CTLON&country=GBR&locusType=city&searchText=London"}],"resultsWanted": 60,"maxPages": 4,"proxyConfiguration": {"useApifyProxy": true,"apifyProxyGroups": ["RESIDENTIAL"]}}
Sample Output
{"hotelId": "202202221653165800","hotelName": "Taj Exotica Resort & Spa, The Palm, Dubai","hotelUrl": "https://www.makemytrip.global/hotels/hotel-details/?hotelId=202202221653165800","listingPage": 1,"listingPosition": 1,"propertyType": "Resort","starRating": 5,"hotelCategory": "LUXE","soldOut": false,"locationName": "Palm Jumeirah","cityCode": "CTDUB","countryName": "United Arab Emirates","latitude": 25.12398,"longitude": 55.15409,"overallRating": 4.7,"ratingText": "Excellent","totalReviewCount": 219,"totalRatingCount": 1150,"categories": ["Luxury", "Beach Property"],"persuasions": ["Private beach access"],"heroImage": "https://promos.makemytrip.com/Hotels_product/Luxe/Hero/example.webp","checkin": "09012026","checkout": "09022026","searchText": "Dubai","currency": "SGD"}
Tips for Best Results
- Use complete MakeMyTrip hotel listing URLs with destination, dates, and occupancy included.
- Start with
resultsWanted: 20andmaxPages: 2before increasing collection size. - Keep residential proxy settings enabled on Apify because MakeMyTrip may restrict datacenter traffic.
- Use future travel dates. Expired dates are moved forward automatically, but current dates provide clearer run-to-run comparisons.
- Run comparable searches with the same occupancy and currency when building time-series datasets.
- Some optional fields vary by property, destination, and listing state. Missing source values are omitted from the dataset.
Integrations and exports
- Google Sheets - Send hotel rows to a shared research spreadsheet.
- Webhooks - Notify another system when a collection finishes.
- Make and Zapier - Connect hotel datasets to no-code workflows.
- Apify API - Start runs and retrieve datasets from applications or scripts.
- Dataset exports - Download results as JSON, CSV, Excel, XML, or other supported formats.
Frequently Asked Questions
Can I use any MakeMyTrip hotel listing URL?
Yes. Use a public hotel search or listing URL that includes a valid destination. Extra tracking parameters are retained where safe, while the search context needed for collection is normalized.
What happens when my saved URL contains old dates?
The Actor moves an expired stay to the next available day while preserving the original number of nights. The effective checkin and checkout values are included in every output row.
Can I collect hotels from several cities in one run?
Yes. Add multiple entries to startUrls. The Actor processes each destination separately and applies resultsWanted to each URL.
Why are some output fields missing?
MakeMyTrip does not publish every optional field for every hotel. Empty strings, null values, and empty nested objects are removed to keep exports clean.
Can I schedule hotel monitoring?
Yes. Use Apify schedules to repeat the same search hourly, daily, weekly, or at another interval, then send the dataset to an integration or webhook.
Is it legal to collect MakeMyTrip hotel data?
Collection of public web data may be permitted in many contexts, but you are responsible for complying with applicable laws, MakeMyTrip terms, and privacy requirements.
Related Actors
Support
For bugs, target-page changes, or feature requests, use the Issues tab on the Actor page and include the input URL plus the run ID.
Legal Notice
This Actor is intended for legitimate collection of publicly available hotel listing data. Users are responsible for using the output responsibly and complying with applicable laws, website terms, and data protection rules.