Google Flights Scraper — Real-Time Prices & Itineraries avatar

Google Flights Scraper — Real-Time Prices & Itineraries

Pricing

from $1.50 / 1,000 itinerary scrapeds

Go to Apify Store
Google Flights Scraper — Real-Time Prices & Itineraries

Google Flights Scraper — Real-Time Prices & Itineraries

Live flight prices, airlines, durations, stops, plane types, departure/arrival times, and carbon emissions from Google Flights. One-way, round-trip, multi-city. Economy through First. Adults, children, infants. 30+ languages. No API key, no quotas. Pay per itinerary scraped.

Pricing

from $1.50 / 1,000 itinerary scrapeds

Rating

0.0

(0)

Developer

Pika Choo

Pika Choo

Maintained by Community

Actor stats

1

Bookmarked

13

Total users

1

Monthly active users

11 days ago

Last modified

Share

Google Flights Scraper — Live Prices & Itineraries, No API Key

Google Flights Scraper pulls live flight prices, airlines, durations, layovers, plane types and carbon emissions straight from Google Flights for $1.50 per 1,000 itineraries. No API key, no quotas, no sales call.

Search any route on any date, in any cabin class, and get clean JSON you can drop into a fare tracker, a travel site, a pricing model or an AI travel agent. Works from the Apify Console, the Apify API, the Python and JavaScript clients, and MCP.

Google does not publish a public Google Flights API. This actor is the practical Google Flights API alternative: it reads the same public search results a traveler sees and returns them as structured data.

Why this actor

  • Real-time data. Every run queries Google Flights live, not a cached snapshot.
  • No API key. Zero setup, zero quota anxiety, nothing to renew.
  • Full itinerary detail. Multi-segment legs, plane types, exact departure and arrival times, carbon emissions.
  • All cabins. Economy, premium economy, business, first.
  • All trip types. One-way, round-trip, multi-city.
  • Pay per itinerary. You only pay for results that land in your dataset.

Who uses this Google Flights scraper

BuyerUse case
Corporate travel teamsDaily fare monitoring on key routes for policy compliance and budgeting
Travel media and bloggers"Cheapest day to fly" content, price comparison tables, seasonal fare guides
AI travel agentsReal-time fare lookup inside chatbots, assistants and agent pipelines via MCP
Pricing and revenue analystsTrack airline pricing strategy, seasonality and competitor fares
Indie SaaS and deal sitesPower flight-deal alerts without a Skyscanner or Amadeus contract
Sustainability researchersCompare CO2 emissions per itinerary against the typical figure for the route

What you get

Each dataset row is one itinerary. Fields come straight from the dataset schema:

FieldTypeDescription
from_airport / to_airportstringIATA codes used in the search
date / return_datestringOutbound and return dates (return_date is null for one-way)
trip / seat / passengersstring / objectTrip type, cabin class and passenger counts echoed from the input
airline_codesarrayIATA airline codes (e.g. B6, DL, UA)
airline_namesarrayHuman-readable airline names
pricenumberTotal price in the displayed currency (typically USD)
stopsintegerNumber of layovers (0 = direct)
duration_min_totalintegerTotal trip time in minutes
departure / arrivalISO datetimeFirst-segment departure and last-segment arrival
segmentsarrayPer-leg detail: airports (code and name), times, duration, plane type
carbon_emission_gnumberThis itinerary's CO2 emissions in grams
carbon_typical_on_route_gnumberTypical CO2 for the route, for spotting greener picks
scraped_atISO datetimeUTC timestamp of the scrape

You need two things: a departure airport and a destination airport, both as three-letter IATA codes. Everything else has a sensible default.

  • Route: from_airport and to_airport (for example JFK and LAX).
  • Dates: date in YYYY-MM-DD. Leave it empty and the actor searches 30 days from today. Add return_date for round trips.
  • Trip type: one-way (default), round-trip or multi-city.
  • Cabin class: economy (default), premium-economy, business or first.
  • Passengers: adults (1 to 9), children (ages 2 to 11), infants_in_seat, infants_on_lap.
  • Language: two-letter ISO code such as en, es, fr, de, ja or zh-TW. Airline and airport names come back localized.
  • Max itineraries: max_results from 1 to 200 (default 25). Google Flights typically surfaces 30 to 80 itineraries per query.

Example input

{
"from_airport": "JFK",
"to_airport": "LAX",
"date": "2026-06-15",
"trip": "one-way",
"seat": "economy",
"adults": 1,
"max_results": 50
}

Sample output (one itinerary)

{
"from_airport": "JFK",
"to_airport": "LAX",
"date": "2026-06-15",
"return_date": null,
"trip": "one-way",
"seat": "economy",
"passengers": {"adults": 1, "children": 0, "infants_in_seat": 0, "infants_on_lap": 0},
"airline_codes": ["B6"],
"airline_names": ["JetBlue"],
"price": 149,
"stops": 0,
"duration_min_total": 353,
"departure": "2026-06-15T06:00:00",
"arrival": "2026-06-15T08:53:00",
"segments": [
{
"from_airport": {"code": "JFK", "name": "John F. Kennedy International Airport"},
"to_airport": {"code": "LAX", "name": "Los Angeles International Airport"},
"departure": "2026-06-15T06:00:00",
"arrival": "2026-06-15T08:53:00",
"duration_min": 353,
"plane_type": "Airbus A320"
}
],
"carbon_emission_g": 407000,
"carbon_typical_on_route_g": 363000,
"scraped_at": "2026-04-30T10:18:06.919Z"
}

Supported features

FeatureSupported
One-way searchesYes
Round-trip searchesYes
Multi-city itinerariesYes
Economy, Premium Economy, Business, FirstYes
Adults, children, infants (seat and lap)Yes
30+ result languagesYes
Carbon emissions dataYes
Plane type per segmentYes
Layover detectionYes (via stops and segments)
Automatic retry when Google throttlesYes (3 attempts with backoff)
Budget capYes (honors the max total charge you set on the run)

Pricing: how much does it cost to scrape 1,000 flights?

Billing is pay-per-event. The main event is Itinerary Scraped at $0.0015, charged once per itinerary written to your dataset. There is no charge for a run that returns nothing.

Worked example for 1,000 itineraries:

ItemQuantityUnit priceCost
Itinerary Scraped1,000$0.0015$1.50
Dataset item (platform)1,000$0.00001$0.01
Actor start (platform)5 runs of 200$0.00005$0.00025
Totalabout $1.51

Standard Apify platform usage (compute time) for the run is billed separately at your plan's rate; a typical single-route search finishes in well under a minute. Set Max total charge on the run and the actor stops pushing itineraries once that budget is reached, so a runaway schedule can never surprise you.

For comparison, commercial flight data APIs commonly start at several hundred dollars per month with fixed quotas. Here, 10,000 itineraries a month costs about $15.

Use with AI agents and MCP

The actor is available as a tool on the Apify MCP server, so Claude, ChatGPT, Cursor or any MCP-compatible agent can search flights on demand:

https://mcp.apify.com/?tools=fetch-actor-details,openclawai/google-flights-scraper

Add that URL as an MCP server in your client and the agent can call the scraper with a route, date and cabin class, then reason over the returned itineraries (cheapest, fastest, fewest stops, lowest CO2). Step-by-step setup, prompt examples and agent recipes are in the Datapika guide: datapika.com/actors/google-flights-scraper.

Integrations

  • Apify API. Start a run with POST /v2/acts/openclawai~google-flights-scraper/runs and read results from the run's default dataset as JSON, CSV, Excel, XML or RSS.
  • Python client. ApifyClient(token).actor("openclawai/google-flights-scraper").call(run_input={...}) then iterate dataset(run["defaultDatasetId"]).iterate_items().
  • JavaScript client. await client.actor("openclawai/google-flights-scraper").call(input) then client.dataset(run.defaultDatasetId).listItems().
  • Schedules and webhooks. Run the same route every morning from the Apify scheduler and post results to Slack, a Google Sheet, a database or your own endpoint.
  • Zapier, Make, n8n. Use the Apify app in each platform to trigger runs and fan out the dataset.

FAQ

Does Google Flights have an official API?

No. Google retired its public QPX Express flights API in 2018 and has not replaced it. Google Flights Scraper fills that gap by reading the public search results page and returning structured JSON, so you get a Google Flights API alternative with no partnership or key.

How much does it cost to scrape 1,000 Google Flights itineraries?

$1.50 for the itineraries plus roughly one cent of platform events, so about $1.51 in total. See the pricing table above for the breakdown.

How many results can I get per run and how fast is it?

Up to 200 itineraries per run (max_results), and Google usually returns 30 to 80 per query. A single-route search typically completes in under a minute, including the automatic retries the actor performs if Google throttles the request.

The actor collects only publicly displayed search results, involves no login and no personal data. Scraping public data is generally lawful for research, monitoring and analytics, but you are responsible for complying with the laws in your jurisdiction and with Google's terms of service. Use the data responsibly.

What output formats are available?

Every run writes to an Apify dataset that you can download as JSON, CSV, Excel, XML, HTML table or RSS from the Console, the API or the clients.

How does this compare to Skyscanner, Amadeus or Kiwi APIs?

Those products require a partner agreement or a subscription with monthly quotas, and they return their own inventory rather than what Google Flights shows. This actor reads Google Flights directly, bills per itinerary with no minimum, and includes plane types and carbon data that many commercial APIs omit.

Can I track flight prices over time?

Yes. Put the actor on an Apify schedule (hourly, daily, weekly) for the routes you care about. Each row carries scraped_at, so you can build price history, fare-drop alerts and "best day to book" analysis from the datasets.

Why did a run return zero itineraries?

Usually one of three things: the IATA code is wrong, the date is in the past, or Google Flights temporarily blocked the request. The actor retries three times with backoff before failing with a clear message, and you are never charged for empty runs. Try again in a few minutes or change the route.

This actor extracts publicly available data from Google Flights search results. No login, personal data or paid API is involved. Use the data in compliance with applicable laws and Google's terms of service. Intended for research, price monitoring, analytics and travel-product development.