# Tripadvisor Scraper API — $0.001 per place

> Tripadvisor Scraper API: Restaurants or hotels from a Tripadvisor listing, with rating. $0.001 per delivered place, nothing delivered means nothing charged.

[Home](https://quanticdata.io/)/[Collectors](https://quanticdata.io/collectors/)/*Tripadvisor Scraper API*

# Tripadvisor Scraper API

A Tripadvisor scraper API that takes a destination name — “Rome, Italy”, “New York City” — and returns its restaurants or hotels: name, rating, review count, price level, cuisines, full address, phone, coordinates and the detail URL. The destination is resolved to Tripadvisor’s own geo id for you, so there is no listing URL to hunt down first.

By [Aldo Morese](https://quanticdata.io/about/), founder of QuanticData · Published Aug 21, 2026 · Updated Sep 3, 2026

[Get my free API key](https://app.quanticdata.io/register) [See the request](/collectors/tripadvisor-scraper-api/#integration)

$0.001 per delivered place · $2 free every month · Failed runs never billed

POST /v1/scraper/collectors/tripadvisor_search/run

```
$ curl $QD/tripadvisor_search/run \
    -H "Authorization: Bearer $QD_API_KEY" \
    -d '{"location": "New York City", "type": "restaurants", "max_results": 60}'
{ "status": "done", "count": 60,
  "results": [
    {
      "id": "…",
      "name": "…",
      "type": "…",
      "rating": … } ],
  "cost": 0.06 }
# 60 places × $0.001 · nothing delivered, nothing charged
```

You send location and type; the run goes out through a residential exit and comes back as places with rank, id and name — 14 fields on every row — and you are billed $0.001 for each place actually delivered, nothing for a run that delivers none.

**$0.001 / place**2,000 places on the free $2 every month

**Semantic input**location, type, country — no URL lists

**Up to 300**places per run, pagination handled for you

**No browser**read over HTTP/TLS — cheaper and faster than rendering

On this page: [Try it](/collectors/tripadvisor-scraper-api/#try) [What it is](/collectors/tripadvisor-scraper-api/#what) [Limits](/collectors/tripadvisor-scraper-api/#caps) [Output fields](/collectors/tripadvisor-scraper-api/#output) [Inputs](/collectors/tripadvisor-scraper-api/#input) [Pricing](/collectors/tripadvisor-scraper-api/#pricing) [Integration](/collectors/tripadvisor-scraper-api/#integration) [Use cases](/collectors/tripadvisor-scraper-api/#use-cases) [Versus the alternatives](/collectors/tripadvisor-scraper-api/#compare) [FAQ](/collectors/tripadvisor-scraper-api/#faq)

Try it

## Tripadvisor listings, running now

Change the input and run it against the live collector — nothing to install, no sign-up.

Run it from your own code, on your own inputs

Same collector, same rows — $2 of free API credit every month, no card.

[Get my free API key](https://app.quanticdata.io/register)

## What a Tripadvisor scraper API does

Every Tripadvisor listing URL is keyed by a numeric geo id nobody knows by heart, so the first thing this collector does is what the site’s own search box does: one cheap JSON call to the typeahead that turns a destination name into that id and its slug. The slug is taken from the URL Tripadvisor returns rather than derived from the name, because the rule for which parts survive — “Rome, Lazio, Italy” becomes `Rome_Lazio` — is theirs, not ours.

The rows then come from the schema.org ItemList Tripadvisor server-renders for search engines, not from the visible cards. That block is better on three counts: names arrive already decoded (O’Hara’s, not an entity), sponsored placements are excluded by the source itself, and it survives the CSS churn that breaks class-based parsers. The DOM is deliberately not used even as a fallback — its rating hooks are not scoped to a card, so on a hotel page the top carousel’s rating would be delivered as row 1’s. Every field was confirmed populated on 30 of 30 rows of both listing types. Tripadvisor sits behind DataDome; this reads on a residential exit without a browser, which keeps it a cheap fetch.

Input is meaning, not a URL *location* *type* *country* *max_results*

## Limits, in plain numbers

Everything that bounds one run of this collector. No hidden throttles.

Max per run

300 places

Price

$0.001 / place

Per 1,000

$1.00

Failed runs

Free zero rows, zero charge

Free every month

$2 no card

Rate limit

60 req/min on the free tier

## What one place looks like

Every delivered place carries these fields. Nullable means the source did not publish it — the field stays empty instead of being guessed.

| Field | Type | What it holds |
| --- | --- | --- |
| `rank` | integer | Position in Tripadvisor's order for this response. Tripadvisor re-ranks between requests, so this is not a stable property of the place. |
| `id` | string · nullable | Tripadvisor location id. |
| `name` | string | Place name. |
| `type` | string | "restaurant" or "hotel". |
| `rating` | number · nullable | Average rating out of 5. |
| `reviews` | integer · nullable | Number of reviews. |
| `price_level` | string · nullable | Price band as Tripadvisor states it ($$ - $$$ for restaurants, a currency tier for hotels). Not a nightly rate. |
| `cuisines` | string[] · nullable | Cuisine tags (restaurants only). |
| `address` | string · nullable | Full address on one line. |
| `latitude` | number · nullable | GPS latitude. |
| `longitude` | number · nullable | GPS longitude. |
| `phone` | string · nullable | Phone number as published. |
| `url` | string · nullable | Canonical detail page URL. |
| `image` | string · nullable | Thumbnail URL. |

## Inputs

The whole request. Anything you leave out falls back to the default shown in the catalog.

| Input | Type | Required | What it does |
| --- | --- | --- | --- |
| `location` | string | yes | City or area, e.g. "New York City" or "Rome, Italy". Resolved through Tripadvisor's own destination lookup; the resolved name is reported in the run notes. |
| `type` | string | no | Restaurants or hotels for that destination. One of: `restaurants`, `hotels`. |
| `country` | string | no | ISO 3166-1 alpha-2 code — proxy exit geo and Google locale (gl). Omit for the default pool. |
| `max_results` | integer | no | How many places to deliver at most (1–300). You pay only for delivered places. |

Pricing

## Tripadvisor Scraper API pricing

$0.001 per delivered place. A run that delivers nothing costs nothing: blocked pages, challenges and retries are on us, and the $2 monthly allowance covers about 2,000 places before you spend anything.

**$0.001**per delivered place*$1 per 1,000 delivered places*

**2,000 places**on the free allowance*$2 every month, no card*

**Zero rows**zero charge*blocks, captchas and retries are on us*

**−30%**on volume tiers*the catalog returns your key's price*

### Pay as you go

$0/mo

- $2 free credit / month

- 60 requests / min

- List unit prices

### Starter

$19/mo

- $15 free credit / month

- 300 requests / min

- 10% off unit prices

Most popular

### Growth

$79/mo

- $50 free credit / month

- 600 requests / min

- 20% off unit prices

### Scale

$299/mo

- $250 free credit / month

- 1,200 requests / min

- 30% off unit prices

Same wallet, same key and same $2 monthly allowance as every other [Data API](https://quanticdata.io/web-data-api-for-ai/). Prices are launch pricing read live from the billing config — `GET /v1/scraper/collectors` returns the price your key actually pays.

Integration

## One POST, typed rows

Base URL `https://api.quanticdata.io/v1`, Bearer auth, the same key as every other Data API. Endpoint: `POST /v1/scraper/collectors/tripadvisor_search/run`.

```
curl -X POST https://api.quanticdata.io/v1/scraper/collectors/tripadvisor_search/run \
  -H "Authorization: Bearer $QD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"location":"New York City","type":"restaurants","max_results":60}'
```

```
import requests

r = requests.post(
    "https://api.quanticdata.io/v1/scraper/collectors/tripadvisor_search/run",
    headers={"Authorization": f"Bearer {QD_API_KEY}"},
    json={
        "location": "New York City",
        "type": "restaurants",
        "max_results": 60
    },
    timeout=120,
)
for row in r.json()["payload"]["results"]:
    print(row)
```

```
const res = await fetch(
  "https://api.quanticdata.io/v1/scraper/collectors/tripadvisor_search/run",
  {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.QD_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({"location":"New York City","type":"restaurants","max_results":60}),
  },
);
const { payload } = await res.json();
console.table(payload.results);
```

```
claude mcp add quanticdata \
  -e QUANTICDATA_API_KEY=qd_live_your_key_here \
  -- npx -y quanticdata-mcp

# then, in the chat:
> run the tripadvisor_search collector with location="New York City" and type="restaurants"
```

## What people build with the Tripadvisor scraper API

Three shapes of work this endpoint was designed around.

### Destination benchmarking

The restaurant or hotel set of a city with rating, review count and price level on every row — the shape a market-entry or tourism-board study starts from.

### Local lead lists

Address, phone and coordinates per venue, deduplicated by Tripadvisor’s id, ready to join with Google Maps rows for the same businesses.

### Rating monitoring

Re-run a destination monthly and diff by `id`: new venues, closed ones, and rating and review-count movement per venue.

## Tripadvisor Scraper API versus rolling your own

The differences that actually cost time when you build this in-house.

|  | DIY scraper | This collector |
| --- | --- | --- |
| Finding the listing | A geo id you look up by hand | A destination name, resolved through Tripadvisor’s own typeahead |
| Sponsored rows | Mixed into the cards | Excluded by the source block itself |
| Ratings | Unscoped hooks that hand row 1 the carousel’s rating | Per-item values from the ItemList, checked on 30/30 rows |
| Anti-bot | DataDome blocks a datacenter fetch | Residential exit, no browser, failed runs free |

## What people search for

Live autocomplete demand around Tripadvisor listings, pulled with our own Keyword ideas collector.

Searches: [tripadvisor scraper extension](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraper python](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraper github](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraper free](/collectors/tripadvisor-scraper-api/#try) [tripadvisor data scraper](/collectors/tripadvisor-scraper-api/#try) [tripadvisor review scraper](/collectors/tripadvisor-scraper-api/#try) [tripadvisor web scraper](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraping api](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraping](/collectors/tripadvisor-scraper-api/#try) [scraping tripadvisor python](/collectors/tripadvisor-scraper-api/#try) [tripadvisor scraping policy](/collectors/tripadvisor-scraper-api/#try) [apify tripadvisor scraper](/collectors/tripadvisor-scraper-api/#try) [tripadvisor parser](/collectors/tripadvisor-scraper-api/#try)

The same call you would paste into a terminal: a Bearer key, location, type and country in the body, and back the envelope every QuanticData endpoint returns — type, message, payload — where count is how many places arrived and usage.cost_usd is $0.06, which is 60 × $0.001. A run that delivers nothing costs nothing. The key is good for 60 req/min on the free tier.

## Sources and standards

The platform documentation and standards this collector is built against — check any claim on this page against the primary source:

- [Tripadvisor: the Content API documentation](https://tripadvisor-content-api.readme.io/reference/overview)

- [Schema.org: the Review type](https://schema.org/Review)

## FAQ

Questions we get about the Tripadvisor scraper API.

[Something else? Ask us →](mailto:hello@quanticdata.io)

### Does Tripadvisor have an official API?

Tripadvisor offers a paid Content API to approved partners, with its own terms and limits. This collector reads the public listing pages instead and needs nothing from Tripadvisor — a destination name is the whole input.

### Restaurants or hotels?

Either: set `type` to `restaurants` or `hotels`. The row shape is the same and `type` is stated on every row.

### Does it return the reviews themselves?

No — it returns the listings with their rating and review count. Review text lives on the venue page, which is a different surface from the search listing this reads.

### Why not read the cards as a fallback when the ItemList is missing?

Because the DOM’s rating and review hooks are not scoped to a card: on a hotel page an unscoped read returns 54 nodes, carousel first, so row 1 would get the wrong rating. A wrong number that looks right is worse than a reported miss, so a page without the ItemList is reported, not guessed.

### Is there a free Tripadvisor scraper API?

Every account gets $2 of credit every month with no card, which is about 2,000 delivered places on this endpoint at $0.001 each. It renews monthly, and a run that delivers nothing is never billed — so a failed or blocked attempt does not eat the allowance.

### How much does one run cost?

Multiply the rows you actually receive by $0.001. A run capped at 300 places — the maximum for this collector — costs $0.3 if every row comes back, and less when the source has fewer. Volume tiers take up to 30% off, and `GET /v1/scraper/collectors` returns the price your key actually pays.

## Run the Tripadvisor scraper API now

$2 of free credit every month, no card. Your key returns its own prices from `GET /v1/scraper/collectors`.

[Get my free API key](https://app.quanticdata.io/register)

Related: [All 100 collectors](https://quanticdata.io/collectors/) [Google Maps Scraper API](https://quanticdata.io/collectors/google-maps-scraper-api/) [Google Reviews Scraper API](https://quanticdata.io/collectors/google-reviews-scraper-api/) [Airbnb Scraper API](https://quanticdata.io/collectors/airbnb-scraper-api/) [Google Hotels API](https://quanticdata.io/collectors/google-hotels-api/) [Market research data](https://quanticdata.io/market-research-data/) [Documentation](https://quanticdata.io/docs/)

## Also on this site

Quantic**Data**

Residential proxies & web data APIs for AI.

#### Proxies

- [Residential Basic](https://quanticdata.io/residential-proxies/#basic)

- [Residential Premium](https://quanticdata.io/residential-proxies/#plans)

- [Cheap Residential](https://quanticdata.io/cheap-residential-proxies/)

- [Mobile Proxies](https://quanticdata.io/mobile-proxies/)

- [Datacenter Proxies](https://quanticdata.io/datacenter-proxies/)

- [ISP Proxies](https://quanticdata.io/isp-proxies/)

- [Rotating Proxies](https://quanticdata.io/rotating-proxies/)

- [Sneaker Proxies](https://quanticdata.io/sneaker-proxies/)

- [SOCKS5 Proxies](https://quanticdata.io/socks5-proxies/)

- [IPv6 Proxies](https://quanticdata.io/ipv6-proxies/)

- [Proxy locations](https://quanticdata.io/proxies/)

#### Data APIs

- [MCP Server](https://quanticdata.io/mcp-server/)

- [Web Scraper API](https://quanticdata.io/web-scraping-api/)

- [SERP API](https://quanticdata.io/serp-api/)

- [Collectors](https://quanticdata.io/collectors/)

- [Web Data for AI](https://quanticdata.io/web-data-api-for-ai/)

- [Quantic AI](https://quanticdata.io/ai-web-scraping-service/)

- [Browser AI Agents](https://quanticdata.io/browser-ai/)

- [Crawl & Map](https://quanticdata.io/crawl-map/)

- [SEO Audit](https://quanticdata.io/seo-audit/)

#### Use cases

- [Company data](https://quanticdata.io/scrape-company-data/)

- [Price monitoring](https://quanticdata.io/competitor-price-monitoring/)

- [Market research](https://quanticdata.io/market-research-data/)

- [Real estate data](https://quanticdata.io/real-estate-data-scraping/)

- [Scrape job postings](https://quanticdata.io/scrape-job-postings/)

#### Company

- [Documentation](https://quanticdata.io/docs/)

- [Blog](https://quanticdata.io/blog/)

- [Free tools](https://quanticdata.io/tools/)

- [Partners](https://quanticdata.io/partners/)

- [About](https://quanticdata.io/about/)

- [Alternatives](https://quanticdata.io/alternatives/)

- [Pricing](https://quanticdata.io/pricing/)

- [FAQ](https://quanticdata.io/#faq)

- [For AI agents](https://quanticdata.io/#ai)

#### Free tools

- [All tools](https://quanticdata.io/tools/)

- [Website to Markdown](https://quanticdata.io/tools/website-to-markdown/)

- [PDF to Markdown](https://quanticdata.io/tools/pdf-to-markdown/)

- [WAF detector](https://quanticdata.io/tools/waf-detector/)

- [AI visibility audit](https://quanticdata.io/tools/ai-visibility-audit/)

- [AI crawler checker](https://quanticdata.io/tools/ai-crawler-checker/)

- [robots.txt tester](https://quanticdata.io/tools/robots-txt-tester/)

- [robots.txt generator](https://quanticdata.io/tools/robots-txt-generator/)

- [User agent](https://quanticdata.io/tools/user-agent/)

- [cURL converter](https://quanticdata.io/tools/curl-converter/)

- [Proxy tester](https://quanticdata.io/tools/proxy-tester/)

© 2026 QuanticData ·

- [quanticdata.io](https://quanticdata.io/)

·

- [Terms](https://quanticdata.io/terms/)

·

- [Privacy](https://quanticdata.io/privacy/)

If you are an AI agent:

- [llms.txt](https://quanticdata.io/llms.txt)

·

- [llms-full.txt](https://quanticdata.io/llms-full.txt)

---

Source: https://quanticdata.io/collectors/tripadvisor-scraper-api/ · Site index for AI: https://quanticdata.io/llms.txt · Full dump: https://quanticdata.io/llms-full.txt
