Wizz Air Flights Scraper: Fares, Schedules & Price Calendar avatar

Wizz Air Flights Scraper: Fares, Schedules & Price Calendar

Pricing

from $11.54 / 1,000 results

Go to Apify Store
Wizz Air Flights Scraper: Fares, Schedules & Price Calendar

Wizz Air Flights Scraper: Fares, Schedules & Price Calendar

Scrape Wizz Air flight fares and availability for any route across 190 airports in 44 countries. Extract lowest price, currency, departure times, flights available and a 30 day price calendar. Export to JSON, CSV or Excel.

Pricing

from $11.54 / 1,000 results

Rating

0.0

(0)

Developer

Scrapers Lat

Scrapers Lat

Maintained by Community

Actor stats

0

Bookmarked

6

Total users

2

Monthly active users

11 days ago

Last modified

Share

Wizz Air Flights Scraper: Fares, Schedules & Price Calendar

Wizz Air Flights Scraper: Fares, Schedules & Price Calendar

Here is one real result, with every field a flight fare record returns:

{
"origin": "BUD",
"originName": "Budapest",
"originCountry": "Hungary",
"destination": "LTN",
"destinationName": "London Luton",
"destinationCountry": "United Kingdom",
"direction": "outbound",
"departureDate": "2026-09-08",
"dayOfWeek": "Tuesday",
"daysToDeparture": 30,
"departureTimes": ["2026-09-08T06:00:00", "2026-09-08T08:30:00", "2026-09-08T17:30:00"],
"flightsAvailable": 3,
"price": 34290,
"currency": "HUF",
"originalPrice": 34290,
"priceReduced": false,
"hasMacFlight": true,
"deepLink": "https://www.wizzair.com/en-gb/booking/select-flight/BUD/LTN/2026-09-08/null/1/0/0/null",
"observedAt": "2026-08-09T21:28:32.410Z",
"error": null
}

The most complete Wizz Air flights scraper available. It returns every fare field the booking engine exposes per route and date, adds airport names and countries, days to departure and all daily departure times, and can also build a 30 day price calendar per route so you can find the cheapest day to fly.

📥 Input · 📤 Output · 💰 Pricing · ▶️ Examples

Apify Coverage Output Billing

Table of contents

What it does

The actor queries the Wizz Air timetable for the route you pass, scans each departure date in the range you set, and writes one normalized fare record per date/direction to the run's dataset. Prices are returned in the fare currency with originalPrice and a priceReduced flag, all daily departure times are listed, and airport names and countries are resolved from IATA codes. When withDetails is on, the actor also emits one priceCalendar record per leg (a 30 day cheapest-fare-per-day calendar with cheapest/average/median stats).

Data covers routes served by the Wizz Air network. If a route or date has no availability, the actor returns nothing for it rather than inventing fares. Because Wizz Air rate-limits datacenter IPs, running through Apify RESIDENTIAL proxy is recommended for reliable results.

Quickstart

Open the actor, paste this into the input, and press Run. It scans 7 days of Budapest to London Luton fares for one adult.

{
"maxFlights": 10,
"withDetails": true,
"origin": "BUD",
"destination": "LTN",
"dateRangeDays": 7,
"adultCount": 1,
"childCount": 0,
"infantCount": 0
}

For more reliable results, add a residential proxy: "proxyConfiguration": {"useApifyProxy": true, "apifyProxyGroups": ["RESIDENTIAL"]}.

Input reference

FieldTypeRequiredDefaultDescription
originenumyesBUDDeparture airport, a Wizz Air airport IATA code, for example BUD, LTN, WAW.
destinationenumyesLTNArrival airport IATA code. Must be a Wizz Air airport the origin connects to.
departureDatestringno(today)First departure date to scan, YYYY-MM-DD. Must be today or later. Empty defaults to today.
dateRangeDaysintegerno7How many consecutive days from departureDate to fetch fares for (1 = that day only, 30 = a month).
returnDatestringno(empty)If set, also fetch the return leg (destination back to origin) starting at this date.
adultCountintegerno1Number of adult passengers used to price the fares.
childCountintegerno0Number of child passengers (age 2 to 14).
infantCountintegerno0Number of infant passengers (under 2).
maxPriceintegerno(none)Only return fares at or below this price (in the fare currency).
minPriceintegerno(none)Only return fares at or above this price (in the fare currency).
withDetailsbooleannotrueWhen on, also build a 30 day price calendar per leg (emitted as priceCalendar records, details charge).
maxFlightsintegerno10Maximum number of fare records to collect across all routes and dates.
proxyConfigurationobjectno(none)Standard Apify proxy configuration. RESIDENTIAL is recommended; Wizz Air rate-limits datacenter IPs.

Output reference

Two record types. A fare record (one per date/direction) and, when withDetails is on, a priceCalendar record (one per leg). Types: string, integer, number, boolean, string[], object[], or null.

Fare record:

FieldTypeDescription
originstringDeparture airport IATA code.
originNamestringDeparture airport/city name.
originCountrystringDeparture country.
destinationstringArrival airport IATA code.
destinationNamestringArrival airport/city name.
destinationCountrystringArrival country.
directionstringoutbound or return.
departureDatestringDeparture date (YYYY-MM-DD).
dayOfWeekstringWeekday name of the departure date.
daysToDepartureintegerWhole days between the run and the departure date.
departureTimesstring[]All departure datetimes available that day.
flightsAvailableintegerNumber of flights available that day.
priceintegerLowest fare for that date, in the fare currency.
currencystringFare currency code, for example HUF, EUR, GBP.
originalPriceintegerUndiscounted fare.
priceReducedbooleantrue when price is below originalPrice.
hasMacFlightbooleanWhether a metropolitan-area (MAC) flight option exists.
deepLinkstringDirect Wizz Air booking link for that date.
observedAtstringISO 8601 timestamp of when the record was collected.
errorstringnull on success; populated on a failed leg/date item.

priceCalendar record (emitted when withDetails is on):

FieldTypeDescription
recordTypestringConstant priceCalendar.
origin, originName, destination, destinationName, directionstringRoute identity, same meaning as above.
calendarFrom / calendarTostringThe 30 day window scanned (YYYY-MM-DD).
currencystringFare currency for the calendar.
cheapestDatestringDate of the cheapest fare in the window.
cheapestPricenumberCheapest fare in the window.
highestPricenumberHighest fare in the window.
averagePricenumberMean fare across days with flights.
medianPricenumberMedian fare across days with flights.
priceSpreadnumberHighest minus cheapest.
savingsPercentintegerPercent saved by booking the cheapest vs highest day.
operatingDaysOfWeekstring[]Weekdays the route operates within the window.
daysWithFlightsintegerNumber of days in the window that have flights.
dailyPricesobject[]Per-day {date, price, flightsAvailable} entries.
deepLinkstringBooking link for the cheapest day.
observedAtstringISO 8601 timestamp.
errorstringnull on success.

Example output record

Real fare record from a live run (input origin BUD, destination LTN, dateRangeDays 10, withDetails true, RESIDENTIAL proxy):

{
"origin": "BUD",
"originName": "Budapest",
"originCountry": "Hungary",
"destination": "LTN",
"destinationName": "London Luton",
"destinationCountry": "United Kingdom",
"direction": "outbound",
"departureDate": "2026-09-08",
"dayOfWeek": "Tuesday",
"daysToDeparture": 30,
"departureTimes": ["2026-09-08T06:00:00", "2026-09-08T08:30:00", "2026-09-08T17:30:00"],
"flightsAvailable": 3,
"price": 34290,
"currency": "HUF",
"originalPrice": 34290,
"priceReduced": false,
"hasMacFlight": true,
"deepLink": "https://www.wizzair.com/en-gb/booking/select-flight/BUD/LTN/2026-09-08/null/1/0/0/null",
"observedAt": "2026-08-09T21:28:32.410Z",
"error": null
}

Run via API and CLI

Start a run and wait for it to finish, then read the dataset. Replace <TOKEN> with your Apify API token.

Run synchronously and get dataset items in one call:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~wizzair-flights-scraper/run-sync-get-dataset-items?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"origin":"BUD","destination":"LTN","dateRangeDays":10,"maxFlights":10,"withDetails":true,"proxyConfiguration":{"useApifyProxy":true,"apifyProxyGroups":["RESIDENTIAL"]}}'

Start a run asynchronously:

curl -X POST "https://api.apify.com/v2/acts/scrapers_lat~wizzair-flights-scraper/runs?token=<TOKEN>" \
-H "Content-Type: application/json" \
-d '{"origin":"WAW","destination":"BCN","departureDate":"2026-10-01","dateRangeDays":14,"maxFlights":50}'

Apify CLI:

apify call scrapers_lat/wizzair-flights-scraper \
--input '{"origin":"BUD","destination":"LTN","dateRangeDays":7}'

Fetch results

Every run writes to a dataset. Fetch items as JSON, CSV, or Excel by changing format:

# JSON
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=json"
# CSV
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&clean=true&format=csv"
# Paginate large datasets
curl "https://api.apify.com/v2/datasets/<DATASET_ID>/items?token=<TOKEN>&offset=1000&limit=1000"

<DATASET_ID> is returned as defaultDatasetId in the run object. Use offset and limit to page through large result sets. clean=true drops empty and internal fields.

Billing and limits

  • Pay per result. You are charged per fare record returned (result event). See the pricing tab for the current per-result price. Each priceCalendar record is a separate details charge.
  • No charge on failure. If a leg or date errors, the actor writes an item with a populated error field and does not charge for it. Empty runs cost nothing.
  • Spend cap respected. Set maxTotalChargeUsd on the run; once reached, the actor stops emitting and charging further billable results.
  • Free Apify plans are capped at 10 fare records per run. Upgrade for higher maxFlights.

FAQ and troubleshooting

A run returned 0 records or an error item. Why? Wizz Air rate-limits datacenter IPs and may return an HTTP 404/challenge from Apify's shared IPs. Add proxyConfiguration with the RESIDENTIAL group and retry. The route/date may also simply have no availability. Failed items are not charged.

How do I find the cheapest day to fly? Keep withDetails on and read the priceCalendar record: cheapestDate, cheapestPrice, and dailyPrices give the full 30 day picture per leg.

How do I scrape a round trip? Set returnDate. The actor then also scans the return leg (destination back to origin) starting from that date.

Why is the price in HUF (or another currency)? Fares are returned in the currency the Wizz Air engine prices the route in. Convert downstream if you need a common currency.

Is this an official Wizz Air tool? No. This actor is independent and has no affiliation with Wizz Air. It reads only data that is publicly available on the Wizz Air site.

More scrapers at scrapers.lat

Built and maintained by scrapers.lat, where we publish scrapers for US and Latin American public platforms: company registries, government data, finance, e-commerce and more. Browse the catalog or request a custom scraper at scrapers.lat.


Independent tool, not affiliated with Wizz Air. Accesses only publicly available data.