Google Flights Scraper - Prices, Emissions & Booking Options avatar

Google Flights Scraper - Prices, Emissions & Booking Options

Pricing

from $1.34 / 1,000 flight options

Go to Apify Store
Google Flights Scraper - Prices, Emissions & Booking Options

Google Flights Scraper - Prices, Emissions & Booking Options

Scrape Google Flights fares, airlines, times, stops, layovers, CO2 and price insights, plus per-seller booking options. Export to CSV, Excel, JSON or XML.

Pricing

from $1.34 / 1,000 flight options

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

3 days ago

Last modified

Share

ParseForge

Google Flights Scraper & Price Tracker: Fares, Emissions, Booking Options & Cheapest Dates

Scrape Google Flights for any route and date: 30 flight options for New York to Los Angeles came back from a single request in under a second of scraping in our last test run. Every option carries its price, airlines, flight numbers, times with UTC offsets, stops and layovers, aircraft, legroom, onboard amenities, CO2 emissions and the "best" flag Google puts on its top flights. No login, no API key. Export to CSV, JSON, Excel, or XML.

Google Flights has no public API. This Actor reads the same result set the Google Flights page shows, keeps Google's own ranking, adds the price insights (low, typical or high, with the typical range and a 60-day price history), and can go one step further: the per-seller booking options for a flight (airline and travel agency prices, fare names, bag fees, booking links) and the price graph with the cheapest fare for about 60 dates around your trip.

Who uses itWhat they scrape Google Flights for
Travel startups and fare alert appsA Google Flights price tracker: the same routes every day, alerting when a fare drops below the typical range
Revenue and pricing analystsCompetitor fares by airline, cabin and date, with the exact price in cents
Travel agencies and OTAsWhich sellers Google lists for a flight and at what price, next to the airline's own fare
Corporate travel and sustainability teamsCO2 per itinerary against the route's typical emissions
Data scientistsAirfare datasets for demand, seasonality and price forecasting models

What it does

The Actor takes an origin, a destination and a date (plus an optional return date), or pasted Google Flights links, and returns one flat row per flight option.

  • 💰 Price: the total for your whole party (price), the exact amount in cents (priceExact), the currency, and whether the fare is low, typical or high right now.
  • ✈️ Itinerary: airlines, flight numbers, departure and arrival airports and times (ISO 8601 with UTC offset), total duration and number of stops.
  • 🧳 Layovers: airport, city and layover duration for every connection.
  • 🛋 Per segment: aircraft and aircraft code, legroom (inches and Google's average / above / below label), Wi-Fi, power, video, the "often delayed by 30+ min" warning, operating carrier and contrail warming potential.
  • 🌱 Emissions: CO2 in kg for the itinerary, the typical CO2 for the route and the difference in percent.
  • ⭐ Google's ranking: the isBest flag for Google's top flights and the original rank, or your own sort by price, duration, departure, arrival or emissions.
  • 🔗 Links: the Google Flights search URL and the booking page URL for each option, plus Google's booking token.
  • ➕ Optional extras, each off by default: return flights for round trips, 60-day price history, booking options per seller, and the price graph of cheapest dates.

What you can do with Google Flights data

📉 Run a Google Flights price tracker.

Schedule the same routes every morning and keep the cheapest option per route. priceLevel tells you when Google itself calls the fare low, and typicalPriceLow / typicalPriceHigh give you the range to alert against.

🗓 Find the cheapest dates to fly.

Turn on the price graph and get one row per date with the cheapest fare Google shows, about two months around your date, for one-way or round trips.

🏷 Compare sellers for the same flight.

Turn on booking options to see every seller Google lists for a flight: the airline's fare families (Basic, Main, Flex) next to travel agencies, with first and second checked bag fees.

🌍 Report on flight emissions.

Every row carries CO2 in kg and how it compares with the typical flight on the route, so you can pick the lower-emission option at a given price.

Why choose this scraper

What you get
Fast and lightOne HTTP request returns the full result set for a search. No browser unless you ask for booking options or the price graph.
Every field on the cardPrice, times with UTC offsets, layovers, aircraft, legroom, Wi-Fi, power, video, delay warnings, emissions and the best-flight flag, in one schema.
Exact pricespriceExact carries the fare to the cent, next to the rounded price Google displays.
Price insights on every rowLow, typical or high, the typical range, and optionally the 60-day price history.
Round trips done rightOutbound options priced as round trips, and optionally the matching return flights, each with a booking link for the pair.
Your Google Flights links workPaste any one-way or round-trip search URL and it runs as is, passengers and cabin included.
Every market71 currencies, 72 languages and 186 countries, the same lists Google Flights offers.

How it compares

All the scrapers below read Google Flights. This one adds Wi-Fi, power, video, delay warnings and contrail data per segment, exact prices to the cent, and price insights with history, with no browser for the main search. It does not do multi-city or departure-time windows yet. The comparison uses each rival's public input and README on September 24, 2026.

FeatureParseForgekaix/google-flights-scrapermemo23/google-flights-scraperautomation-lab/google-flights-scraper
Legroom per segmentYesNot listedYesNot listed
Wi-Fi, power, video and delay warnings per segmentYesNot listedNot listedNot listed
CO2 per itinerary and vs. typicalYesYesNot listedYes
Price insights (low / typical / high)Yes, with 60-day historyNot listedYesNot listed
Booking options per sellerOptionalOptionalOptionalNo
Cheapest datesOptional price graphCalendar pricesNoNot listed
Paste Google Flights URLsYesNoYesNo
Multi-cityNoNot listedYesNo
Departure and arrival time windowsNoYesNoNo

What a Google Flights row looks like

One unedited row from a verified run on September 24, 2026 (JFK to LAX, one way, November 17):

{
"imageUrl": "https://www.gstatic.com/flights/airline_logos/70px/DL.png",
"title": "JFK to LAX, Delta DL 713",
"id": "2026-11-17_DL713",
"rank": 1,
"isBest": "Yes",
"price": 194,
"priceExact": 193.4,
"currency": "USD",
"airlines": ["Delta"],
"airlineCodes": ["DL"],
"flightNumbers": ["DL 713"],
"departureAirport": "JFK",
"departureAirportName": "John F. Kennedy International Airport",
"arrivalAirport": "LAX",
"arrivalAirportName": "Los Angeles International Airport",
"departureTime": "2026-11-17T08:00:00-05:00",
"arrivalTime": "2026-11-17T11:19:00-08:00",
"durationMinutes": 379,
"durationText": "6 hr 19 min",
"stops": 0,
"layovers": [],
"aircraft": ["Airbus A330-900neo"],
"amenities": ["Free Wi-Fi", "In-seat power & USB outlets", "On-demand video"],
"oftenDelayed": "No",
"co2EmissionsKg": 253,
"co2TypicalForRouteKg": 347,
"co2DifferencePercent": -27,
"emissionsLevel": "Lower than typical",
"segments": [
{
"flightNumber": "DL 713",
"airline": "Delta",
"airlineCode": "DL",
"operatedBy": "N/A",
"departureAirport": "JFK",
"departureAirportName": "John F. Kennedy International Airport",
"arrivalAirport": "LAX",
"arrivalAirportName": "Los Angeles International Airport",
"departureTime": "2026-11-17T08:00:00-05:00",
"arrivalTime": "2026-11-17T11:19:00-08:00",
"durationMinutes": 379,
"aircraft": "Airbus A330-900neo",
"aircraftCode": "339",
"legroom": "31 in",
"legroomLabel": "Average legroom",
"amenities": ["Free Wi-Fi", "In-seat power & USB outlets", "On-demand video"],
"oftenDelayed": "No",
"co2EmissionsKg": 253,
"contrailWarmingPotential": "Low"
}
],
"bookingToken": "CjRIR2xYSmJYdDRCZEFBQWh3UVFCRy0tLS0tLXZ3bG0xNy1uMkFBQUFBR3ExamdnR0NKQTBBEgVETDcxMxoLCIyXARACGgNVU0Q4HXCMlwE=",
"rowType": "flight",
"legType": "outbound",
"tripType": "One way",
"cabinClass": "Economy",
"passengers": 1,
"priceNote": "Total one-way price for all passengers",
"priceLevel": "Typical",
"typicalPriceLow": 85,
"typicalPriceHigh": 225,
"searchOrigin": "JFK",
"searchDestination": "LAX",
"searchDepartureDate": "2026-11-17",
"searchReturnDate": "N/A",
"outboundFlightId": "N/A",
"googleFlightsUrl": "https://www.google.com/travel/flights/search?tfs=Gh4SCjIwMjYtMTEtMTdqBwgBEgNKRktyBwgBEgNMQVhAAUgBmAEC&hl=en-US&gl=US&curr=USD",
"bookingUrl": "https://www.google.com/travel/flights/booking?tfs=Gj8SCjIwMjYtMTEtMTciHwoDSkZLEgoyMDI2LTExLTE3GgNMQVgqAkRMMgM3MTNqBwgBEgNKRktyBwgBEgNMQVhAAUgBmAEC&tfu=CmxDalJJUjJ4WVNtSllkRFJDWkVGQlFXaDNVVkZDUnkwdExTMHRMWFozYkcweE55MXVNa0ZCUVVGQlIzRXhhbWRuUjBOS1FUQkJFZ1ZFVERjeE14b0xDSXlYQVJBQ0dnTlZVMFE0SFhDTWx3RT0SAggAIgA&hl=en-US&gl=US&curr=USD",
"scrapedAt": "2026-09-24T20:54:32.790Z",
"error": null
}

With booking options on, a row also carries bookingOptions. For JetBlue B6 423 in the same run: Main Base $204, Main $259, Main Flex $344, Even More Base $388 and Even More $443, all sold by JetBlue, first checked bag $45, each with its booking link.

With the price graph on, the run adds one row per date:

{ "rowType": "date-price", "title": "JFK to LAX on 2026-11-10", "departureDate": "2026-11-10", "returnDate": "N/A", "price": 194, "currency": "USD", "tripType": "One way", "cabinClass": "Economy" }

Configure the run

Give an origin, a destination and a date, or paste Google Flights links. City codes (NYC, LON) cover every airport in the city, and several airports can be combined with commas (JFK,EWR). The Input tab lists every option.

Cheapest nonstop business-class seats for two, in euros:

{ "origin": "NYC", "destination": "LON", "departureDate": "2026-11-17", "adults": 2, "cabinClass": "business", "maxStops": "0", "currency": "EUR", "sortBy": "price" }

A round trip with the return options for the top two outbound flights and their booking options:

{ "origin": "JFK", "destination": "LAX", "departureDate": "2026-11-17", "returnDate": "2026-11-24", "includeReturnFlights": true, "returnFlightsForTopOutbound": 2, "includeBookingOptions": true }

Cheapest dates around a trip, only on SkyTeam airlines:

{ "origin": "BOS", "destination": "MIA", "departureDate": "2026-12-05", "airlines": ["SKYTEAM"], "includePriceGraph": true }

Free users

Free-plan runs return up to 10 results as a preview. Upgrade your Apify plan to collect up to 1,000,000 results per run.

Run it

  1. Create a free Apify account with $5 in credit.
  2. Open the Google Flights Scraper.
  3. Enter origin, destination and departureDate (and returnDate for a round trip), or paste links in startUrls, set passengers, cabin and filters, and click Start.
  4. Export the results as CSV, Excel, JSON, or XML from the Dataset tab, or schedule the run to track fares every day.

Run it programmatically through the Apify API or the ApifyClient for JavaScript and Python.

Use with AI agents (MCP)

Give an AI agent live Google Flights search through the Model Context Protocol. Add the Actor to Claude, Cursor, or any MCP client:

$claude mcp add --transport http apify "https://mcp.apify.com?tools=parseforge/google-flights-scraper"

Then prompt it in plain language:

  • "Find the cheapest nonstop flight from Boston to Miami on December 5 and tell me if the price is low for that route."
  • "Compare business class fares from New York to London next month across airlines, with CO2 per flight."
  • "Which dates around mid November have the cheapest round trip from Chicago to Denver?"

Copy this into ChatGPT, Claude, or Cursor to start:

Use the Apify Actor "parseforge/google-flights-scraper" to search Google Flights. Input: { "origin": "<IATA>", "destination": "<IATA>", "departureDate": "<YYYY-MM-DD>", "returnDate": "<YYYY-MM-DD or empty>", "adults": <n>, "cabinClass": "<economy|premium-economy|business|first>", "maxStops": "<any|0|1|2>", "sortBy": "<best|price|duration>", "maxItems": <n> }. Rows come back with price, currency, airlines, flightNumbers, departureTime, arrivalTime, durationMinutes, stops, layovers, co2EmissionsKg, priceLevel and bookingUrl. Call it with the ApifyClient and my APIFY_TOKEN.

Troubleshooting

Why am I getting no results?

Check the codes and the date: origin and destination must be IATA airport or city codes (JFK, NYC), and the date must be today or later. Google Flights shows nothing for routes with no service on that day, and a strict stops or airline filter can empty a search. The run says so in its log.

Why do I get about 30 results per search?

That is what Google Flights shows for a search: its top flights plus the other flights, usually 15 to 40 options. For more rows, add dates, routes or return flights. maxItems caps the total.

Why is the price for a round trip so high?

Google Flights prices a round trip as a pair, so each outbound row carries the total round-trip price for all passengers. Turn on return flights to see which returns go with it.

Why is a field "Not Disclosed" or "N/A"?

"Not Disclosed" means Google did not publish it for that flight (for example legroom on some regional carriers). "N/A" means it does not apply, such as returnDate on a one-way search or operatedBy when the marketing carrier flies the plane itself.

Why did the booking options come back empty?

Some itineraries are only sold as part of a round trip, and a few cannot be booked on Google at that moment. The row is still delivered, and booking options are billed only when they come back.

FAQ

QuestionAnswer
Do I need a Google account or API key?No. It reads the public Google Flights pages, logged out.
Is there an official Google Flights API?No. Google retired QPX Express in 2018. This Actor returns the same data the Google Flights page shows.
Does it support round trips and multi-city?One-way and round trips, yes. Multi-city is not supported: run each leg as a one-way search.
Which filters are applied by Google?Stops, airlines and alliances, cabin and passengers go into the Google Flights search itself. Max price and max duration are applied to the returned options.
Can I track prices over time?Yes. Schedule the same input daily and use priceLevel, the typical range, and the optional 60-day price history.
Are prices per person?No, price is the total for all passengers in the party, in the currency you choose.
How exact is the price?price is the rounded amount Google shows. priceExact is the fare to the cent from Google's own itinerary data.
What are booking options?The sellers Google lists for a flight (the airline and travel agencies) with their prices, fare names, bag fees and booking links.
Can I paste a Google Flights link?Yes. One-way and round-trip search links with tfs= in the address run with their own passengers and cabin.
How many results per run?Free plan: 10. Paid: up to 1,000,000, across as many searches as you give it.
Is this an official Google product?No. It is unofficial and reads only public Google Flights data.

Browse the full ParseForge collection for more scrapers.

🆘 Need help? Open our contact form with your run ID, your input, and what you expected.

⚠️ Disclaimer. This Actor is unofficial and is not affiliated with, endorsed by, or sponsored by Google LLC. It collects only publicly available Google Flights data. Prices change constantly and must be confirmed with the seller before booking. You are responsible for using the data in compliance with Google's terms and applicable laws.