Google Flights Scraper
Pricing
from $1.50 / 1,000 search results
Go to Apify Store
Google Flights Scraper
Extract live flight prices, schedules, and multi-city travel data from Google Flights instantly.
Overview
Google Flights Scraper searches Google Flights and stores one dataset item per returned itinerary. It supports one-way, round-trip, and multi-city searches.
Supported searches
- One-way: one origin, one destination, one departure date.
- Round-trip: one outbound leg and one return leg.
- Multi-city: two or more ordered flight legs.
Quick start
- Open the Actor on Apify.
- Select
oneWay,roundTrip, ormultiCity. - Enter airport IATA codes, dates, passengers, currency, and language.
- Use Apify Proxy when Google blocks direct requests; multi-city runs enable it automatically on Apify.
- Run the Actor and download results from the Dataset tab.
Configuration
| Field | Description | Default |
|---|---|---|
operation | Search mode: oneWay, roundTrip, or multiCity. | oneWay |
origin, dest | Three-letter IATA airport codes, for example JFK and LHR. | JFK, LHR |
date, returnDate | Travel dates in YYYY-MM-DD format. Leave empty to use valid future dates automatically. | Empty |
seatClass | economy, premium-economy, business, or first. | economy |
stops | 0 any stops, 1 nonstop, 2 max one stop. | 0 |
sort | best, price, or duration. | best |
currency, language | Google Flights currency and locale, for example USD and en-US. | USD, en-US |
fetchAllLegs | Multi-city only: true to fetch the complete itinerary across all flight legs, false to only fetch the first leg. | false |
proxyConfiguration | Apify Proxy settings. Multi-city runs on Apify automatically use proxy because it improves reliability. | {"useApifyProxy": false} |
Usage examples
One-way input
{"operation": "oneWay","oneWay": {"origin": "JFK","dest": "LHR","date": "","adults": 1,"seatClass": "economy","stops": 0,"sort": "best","currency": "USD","language": "en-US"},"proxyConfiguration": {"useApifyProxy": true}}
Round-trip input
{"operation": "roundTrip","roundTrip": {"origin": "JFK","dest": "LHR","date": "","returnDate": "","adults": 1,"seatClass": "economy","currency": "USD","language": "en-US"},"proxyConfiguration": {"useApifyProxy": true}}
Multi-city input
{"operation": "multiCity","multiCity": {"legs": "[{\"origin\":\"JFK\",\"dest\":\"LHR\",\"date\":\"2026-06-01\"},{\"origin\":\"LHR\",\"dest\":\"CDG\",\"date\":\"2026-06-05\"}]","adults": 1,"seatClass": "economy","stops": 0,"sort": "best","currency": "USD","language": "en-US","fetchAllLegs": false},"proxyConfiguration": {"useApifyProxy": true}}
Output
Results are written to the default dataset. The key-value store record OUTPUT contains a compact run summary.
{"price": 434,"airlines": ["Icelandair"],"departure": "2026-06-01T20:30","arrival": "2026-06-02T11:55","stops": 1,"duration_min": 545,"segments": [{"from": "JFK","from_name": "John F. Kennedy International Airport","to": "KEF","to_name": "Keflavik International Airport","departure": "2026-06-01T20:30","arrival": "2026-06-02T06:20","duration_min": 350,"plane": "Airbus A321neo"}]}
Reliability notes
- Google Flights can return consent, verification, or incomplete pages from shared IPs.
- The Actor retries Google requests with fresh TLS/client sessions before failing.
- Multi-city runs use Apify Proxy automatically on the platform because it improves reliability.
- Prefilled input is designed to complete in well under five minutes.
Legal note
This Actor collects publicly available flight-search results. Make sure your use case complies with applicable laws, regulations, and website terms.