Swiggy Scraper: Restaurants, Ratings & Menus avatar

Swiggy Scraper: Restaurants, Ratings & Menus

Pricing

from $0.52 / 1,000 swiggy records

Go to Apify Store
Swiggy Scraper: Restaurants, Ratings & Menus

Swiggy Scraper: Restaurants, Ratings & Menus

Scrape Swiggy restaurants by location and full menus with item prices. Rating, cuisine, cost for two, delivery time, and veg or non-veg detail on every item. Engineered to run reliably despite Swiggy blocking many scrapers. No login needed. From $0.88 per 1,000 results.

Pricing

from $0.52 / 1,000 swiggy records

Rating

0.0

(0)

Developer

GetAScraper

GetAScraper

Maintained by Community

Actor stats

0

Bookmarked

3

Total users

2

Monthly active users

3 days ago

Last modified

Share

๐Ÿ” Swiggy Scraper: Restaurants, Ratings & Menus

Get Swiggy restaurant listings and full menu pricing ready for your spreadsheet in minutes.
Search any delivery location for nearby restaurants, then pull complete menus with item-level pricing and variants for the ones you need. Built to keep working even when Swiggy tries to stop automated access.
๐Ÿ” Location-based search
Nearby restaurants for any delivery point, with cuisine, rating, and cost for two included.
๐Ÿ“‹ Full menu pricing
Every menu item's price, category, and description, down to size and combo variants.
๐Ÿฅฆ Veg and stock detail
Veg or non-veg flags and live stock status on every single item.
๐Ÿ›ก๏ธ Built to stay up
Engineered specifically to keep working despite Swiggy's aggressive automated blocking.

No login required. Search mode returns the restaurants Swiggy itself would show first for a delivery point, and Menu mode fills in every item and price for the restaurants you care about.


๐Ÿ” What does Swiggy Scraper do?

This Actor runs in two modes:

  • Search mode returns restaurants near a delivery location: name, cuisine, rating, review count, cost for two, delivery time, and whether it is currently open. It returns roughly the same first page of results Swiggy's own delivery-address picker shows for that location, not an entire city's directory.
  • Menu mode returns the full menu for specific restaurants: item name, category, description, price in rupees, veg or non-veg flag, stock status, and any size or combo variants with their own prices.

Chain the two together: run Search mode over a location to find restaurants, then feed the ones you need into Menu mode for full pricing detail.

โšก Built for a target that actively fights scrapers. Where many scraping tools get blocked by Swiggy's defenses, this Actor is engineered specifically to run reliably, run after run.

๐Ÿ’ก Why use Swiggy Scraper

  • I am a market researcher studying India's food delivery industry, looking to compare restaurant density, cuisine mix, and ratings across cities in order to build sector reports for clients.
  • I am a competitive intelligence analyst tracking specific restaurant chains, looking to monitor menu prices and item changes across locations in order to spot competitor pricing moves early.
  • I am building a food delivery or restaurant discovery product, looking to seed my database with clean starter data in order to skip weeks of manual entry.
  • I am a multi-location restaurant operator, looking to check how my own listings and menu pricing appear on Swiggy across cities in order to catch stale or incorrect prices before customers do.

๐Ÿš€ How to use Swiggy Scraper

STEP 1
Pick a location or restaurant
Enter delivery coordinates for Search mode, or restaurant IDs for Menu mode.
STEP 2
Start the run
The Actor handles Swiggy's blocking automatically. No login and no account setup needed.
STEP 3
Export your data
Download clean rows as CSV, JSON, or Excel, ready for your spreadsheet or CRM.

๐Ÿ“ฅ Input

FieldTypeRequiredDescription
modeenumNoWhich mode to run: search for restaurants near a location, or menu for specific restaurants' full menus. Defaults to search.
latitudenumberNoDelivery location latitude, used in Search mode. Defaults to a point in Bangalore. Find coordinates for any address at latlong.net.
longitudenumberNoDelivery location longitude, used in Search mode. Defaults to a point in Bangalore.
restaurantIdsarray of stringsNoNumeric Swiggy restaurant IDs to fetch menus for, used in Menu mode. Copy these from a Search mode run's id field, or from the rest#### suffix of a restaurant's Swiggy URL.
maxItemsintegerNoMaximum number of records saved to your dataset. Use 0 for no limit. You are billed per record returned. Defaults to 100.
proxyConfigurationobjectNoProxy settings. Residential proxy is recommended and set as the default, since it clears Swiggy's automated checks more reliably.

๐Ÿ“ค Output

Each row is either a restaurant from Search mode or a menu item from Menu mode, distinguished by rowType. Only fields genuinely present in Swiggy's own response are included, so your dataset stays clean.

A Search mode row:

{
"rowType": "restaurant",
"id": "5934",
"name": "Truffles",
"locality": "Indiranagar",
"area": "Indiranagar",
"cuisines": "American, Burgers, Steakhouse",
"costForTwo": "โ‚น800 for two",
"rating": "4.5",
"ratingCount": "10K+",
"deliveryTime": "35 mins",
"distance": "3.1 km",
"isOpen": true,
"imageUrl": "https://media-assets.swiggy.com/swiggy/image/upload/xyz123",
"restaurantUrl": "https://www.swiggy.com/city/bangalore/truffles-indiranagar-rest5934"
}

A Menu mode row:

{
"rowType": "menuItem",
"restaurantId": "5934",
"id": "284915",
"name": "Classic Cheese Burger",
"category": "Burgers",
"description": "Grilled patty with cheddar, lettuce, and house sauce",
"priceInr": 249,
"isVeg": false,
"inStock": true,
"variantCount": 2,
"variants": [
{ "name": "Regular", "priceInr": 249 },
{ "name": "Large", "priceInr": 319 }
]
}

๐Ÿ“‹ Data table

FieldTypeDescription
rowTypestringRecord type, restaurant for Search mode rows or menuItem for Menu mode rows.
idstringRestaurant ID (Search mode) or menu item ID (Menu mode).
namestringRestaurant name or menu item name.
localitystringNeighborhood or delivery area (Search mode).
areastringBroader area name (Search mode).
cuisinesstringComma-separated cuisine types served (Search mode).
costForTwostringApproximate cost for two, as shown on Swiggy (Search mode).
ratingstringRestaurant rating, as displayed by Swiggy, e.g. "4.5" (Search mode).
ratingCountstringReview count, as displayed by Swiggy, e.g. "10K+" (Search mode).
deliveryTimestringEstimated delivery time (Search mode).
distancestringDistance from the delivery location (Search mode).
isOpenbooleanWhether the restaurant is currently accepting orders (Search mode).
imageUrlstringRestaurant or item image URL.
restaurantUrlstringDirect link to the restaurant's Swiggy page (Search mode).
restaurantIdstringID of the restaurant this menu item belongs to (Menu mode).
categorystringMenu category the item belongs to, e.g. "Burgers" (Menu mode).
descriptionstringItem description, as written on Swiggy (Menu mode).
priceInrnumberItem price in Indian rupees (Menu mode).
isVegbooleanWhether the item is vegetarian (Menu mode).
inStockbooleanWhether the item is currently available to order (Menu mode).
variantCountnumberNumber of size or combo variants the item has, if any (Menu mode).
variantsarrayEach variant's name and price in rupees, if the item has variants (Menu mode).

๐Ÿ’ฐ Pricing

Pricing is pay per result, billed per row saved to your dataset. Empty runs cost nothing, and there are no monthly subscriptions or hidden fees.


โญ Enjoying Swiggy Scraper?

โญ โญ โญ โญ โญ
Save hours of manually checking Swiggy listings and menus city by city.
A 5-star rating takes 10 seconds and helps other market researchers and product teams find a reliable Swiggy data source. Your feedback also tells us what to build next.
โ˜…ย ย Rate this Actor on Apify

๐Ÿ› ๏ธ Tips and optimization

  • Chain search into menu: Copy the id values from a Search mode run into restaurantIds for a Menu mode run to pull full pricing only for the restaurants you actually need.
  • Try several nearby points for one city: Since Search mode returns one location's first page of results, running a few nearby coordinates across a city surfaces more unique restaurants than a single point.
  • Cap your spend: Set maxItems to stop the run once you have reached the record count you need.

โ“ FAQ

Does it get blocked?

Swiggy runs aggressive automated blocking that stops many scraping tools cold. This Actor is built specifically to get past it reliably, with residential proxy set as the default.

Do I need a Swiggy account or login?

No. Every restaurant and menu field comes from Swiggy's own public pages, the same information any visitor sees without logging in.

How fresh is the data?

Every run fetches restaurant and menu data live from Swiggy the moment you start it, so ratings, prices, and stock status reflect what is on the site right now.

Does search mode cover every restaurant in a city?

No. Search mode returns the same first page of results Swiggy's own delivery-address picker shows for one location, not the entire city. Running a few nearby coordinates surfaces more restaurants; for a specific restaurant you already know, use its ID directly in Menu mode.


๐Ÿ›ก๏ธ Disclaimers and support

  • Disclaimer: This is an independent scraper that retrieves publicly available information. It is not affiliated with, endorsed by, or sponsored by Bundl Technologies Private Limited (Swiggy).
  • Support: For bug reports, feature requests, or custom field additions, please open a ticket under the Issues tab.

๐Ÿ”— Other actors