Google Flights Scraper: Prices, Airlines and Times avatar

Google Flights Scraper: Prices, Airlines and Times

Pricing

from $9.70 / 1,000 flights

Go to Apify Store
Google Flights Scraper: Prices, Airlines and Times

Google Flights Scraper: Prices, Airlines and Times

Scrape Google Flights for any route and date. Get price, currency, airline, flight numbers, departure and arrival times, duration, stops and layovers, one way or round trip, economy to first. Type LHR-JFK or London to New York. No login, no browser. Pay per flight, $10 per 1,000.

Pricing

from $9.70 / 1,000 flights

Rating

0.0

(0)

Developer

Oski

Oski

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

10 days ago

Last modified

Share

Google Flights Prices Scraper

Flight prices, airlines, flight numbers, departure and arrival times, duration, stops and layovers from Google Flights for any route, date and cabin. One way or round trip, in the currency you choose. Pay only for flights delivered. No login, no browser, no API key.

Tired of flight scrapers that time out or come back empty? This one reads Google's own results data over a plain connection in about a second a route, retries the page when Google sends it without results, and ends every run with a status line that says exactly what came back and why.

What you get

One row per itinerary:

FieldExample
route, origin, destinationLHR-JFK, LHR, JFK
depart_date, return_date, trip_type2026-11-10, null, one way (the dates Google priced; what you asked for is in requested_depart_date and requested_return_date)
origin_airport, destination_airportthe airport Google attached to a city name (Berlin gives BER)
airline, airlines, flight_numbersJetBlue, ["JetBlue"], ["B62220"]
depart_airport, arrive_airportLHR, JFK
depart_at, arrive_at2026-11-10T07:25, 2026-11-10T10:32 (local times)
duration_min, stops487, 0
layovers[{"airport": "BCN", "name": ..., "city": "Barcelona", "minutes": 335}]
legsone entry per flight: number, airline, airports, times, duration, aircraft, legroom, emissions
price, price_text, currency, price_for409, "GBP 409", GBP, one way
cabin, passengerseconomy, 1
aircraft, legroom, emissions_kgAirbus A321neo, 32 in, 549
rankbest or other (Google's own grouping)
search_url, scraped_atthe Google Flights search and the run time

Plus one free SUMMARY row per route (flights delivered, requested, available, currency, and a reason when nothing came back).

Use cases

  • Fare monitoring: schedule a daily run for your routes and chart the cheapest fare.
  • Price comparison content: "cheapest flights London to New York in November" tables with live prices.
  • Travel agencies and corporate travel: price a batch of trips for several dates and cabins in one run.
  • Market research: which airlines fly a route, how often, with how many stops, at what price.
  • Alerts: run it with your own threshold logic and message yourself when a fare drops.

How to use it

  1. Type your routes, one per line: airport codes (LHR-JFK), city names (London to New York, Winston-Salem to Boston) or a pasted Google Flights search link. The same search typed twice runs once.
  2. Pick a departure date (empty means four weeks ahead). Add a return date for round-trip totals, or leave it empty for one-way prices.
  3. Choose cabin (economy, business or first; Google's search does not read premium economy), number of adults and a currency if you want one.
  4. Start the run. Download the dataset as JSON, CSV or Excel, or read it through the API.

Prices: what they mean

  • With no return date the price is a one-way fare. With a return date it is the round-trip total for the outbound flight shown, as Google displays it. The price_for field says which.
  • Prices are totals for the number of adults you set.
  • Currency follows your Currency field, or the country's currency when it is empty (United Kingdom gives GBP). The code is always in currency.
  • A few flights carry no fare on Google ("Price unavailable"). They are delivered with price null and are free.
  • Dates can be up to 330 days ahead. The rows carry the dates Google priced, and the SUMMARY row says so if they differ from the request.
  • Google groups results into "best" and "other" flights; both are delivered, in Google's order, with the group in rank.

How many flights and what it costs

Google lists 10 to 60 itineraries per route and date. Each route is one search.

Flights deliveredCost
100about $1.00
1,000about $10

Price: a small fee per run plus a fee per flight delivered with a fare. Flights without a fare and routes that return nothing are free.

Tips for bigger runs

  • Run many routes in one go: they are fetched in parallel.
  • To price several dates for the same route, add the route once per run and schedule runs per date, or pass each date as its own run through the API.
  • For a daily fare series, schedule the actor with fixed dates so runs compare like with like.

Scheduling and API

Schedule it in the Apify console (Schedules > Create) or call it:

curl -X POST "https://api.apify.com/v2/acts/oski~google-flights-prices-scraper/run-sync-get-dataset-items?token=YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"routes": ["LHR-JFK", "LHR-LAX"], "departDate": "2026-11-10", "returnDate": "2026-11-17", "currency": "GBP"}'

If something looks wrong

Status line saysWhat it meansWhat to do
Input problem: Add at least one routeThe routes field was emptyAdd a route like LHR-JFK
Input problem: "X" is not a routeA line had only one placeType two places, origin and destination
Input problem: Return date must be on or after the departure dateDates were reversedSwap them
Google did not understand the routeGoogle could not read the places as typedCheck the spelling or use airport codes such as LHR-JFK
Google listed no flights for it on that dateGoogle has no itineraries for that pair and dateCheck the airport codes or try another date
Google sent the page without its results three timesGoogle served a results-less page on every tryRun again later; it is a transient Google behaviour
Google showed a consent page or a captchaGoogle asked for consent or refused the exit IPRun again; if it repeats, choose the RESIDENTIAL proxy group
Fewer flights than listedThe route had more flights than your maximumRaise "Flights per route"
Input problem: ... is a link but not a Google Flights search linkA hotel, explore or other site's link was pastedPaste a google.com/travel/flights link or type the route
Input problem: ... is more than 330 days aheadThe search names month and day onlyPick a date within 330 days
Stopped early because the run reached its maximum costYour per-run cost cap was hit; unstarted routes have a SUMMARY row saying soRaise the cap under Run options
I wanted one-way prices but got round tripA return date was setClear the return date

Sibling actors

  • Google Hotels Prices Scraper: hotel names, nightly prices, ratings and amenities for any destination and dates.