Ryanair Scraper
Pricing
$2.25 / 1,000 fare options
Ryanair Scraper
Scrape Ryanair fares by route, date, flexible date window, passenger mix, price, and sort order. Export prices, flight numbers, local times, duration, airport details, booking links, and scrape timestamps.
Pricing
$2.25 / 1,000 fare options
Rating
0.0
(0)
Developer
Maxime Dupré
Maintained by CommunityActor stats
0
Bookmarked
2
Total users
1
Monthly active users
3 days ago
Last modified
Categories
Share
✈️ Ryanair scraper API for fares and flight data
Ryanair Scraper collects public fare data from Ryanair by route, travel date, flexible date window, passenger mix, maximum price, and sort order. Enter origin and destination airport IATA codes, pick a departure date, and the Actor saves clean Ryanair fare rows with prices, passenger fare breakdowns, flight numbers, local times, duration, airport details, booking links, and scrape timestamps.
Use this Ryanair scraper when you need repeatable route fare checks without opening Ryanair pages by hand. It is useful for travel dashboards, fare monitoring, route research, price comparison workflows, OTA checks, and internal travel tools that need structured Ryanair flight data through Apify exports, API access, schedules, webhooks, or integrations.
For a quick first run, keep the prefilled STN to DUB route, keep the prefilled date, and leave Maximum fare rows at 25. Once the output shape matches your workflow, change the route, add a return date, adjust the flexible date window, raise the limit, schedule repeat runs, or call the Actor through the Apify API.
🔎 What this Actor does
- Searches public Ryanair fare data for one-way and round-trip route inputs.
- Accepts three-letter IATA airport codes for origin and destination airports.
- Uses
departureDateas the outbound travel date. - Uses optional
returnDateto run the reverse route as the inbound leg. - Supports adult, teen, child, and infant passenger counts.
- Supports a flexible date window around each submitted travel date.
- Can filter saved fares by maximum price in the source currency.
- Saves one dataset item per accepted Ryanair fare option.
- Returns prices, currency, passenger fare breakdowns, flight numbers, carrier, local departure and arrival times, duration, airport details, availability hints, route links, booking links, and scrape timestamps.
- Can sort saved rows by source order, cheapest, earliest departure, or shortest duration.
- Works with Apify dataset exports, API clients, schedules, webhooks, and integrations.
The Actor focuses on public Ryanair fare options returned for the submitted route and date window. It does not compare other airlines, book flights, hold fares, log in to Ryanair accounts, redeem vouchers, scrape seat maps, or guarantee that a fare remains available after the run.
📦 Data you can extract
Each dataset item is one Ryanair fare option. Fields can be empty when Ryanair does not show that value for the fare.
type-ryanair_farerank- result position after filtering and sortingsource-RyanairtripType,legDirection,departureDate, andreturnDateprice- total fare, source currency, and passenger-level fare breakdowncurrencyflightNumber,carrierCode, andcarrierNamedepartureAirportandarrivalAirport- airport code, name, city, country, and country code when availablelocalDepartureTime,localArrivalTime,duration, anddurationMinutespassengers- adult, teen, child, infant, and total passenger countsavailability- fares-left and availability status when returned by the sourcefare- fare class when returned by the sourcelinks- Ryanair route and booking URLssourceMetadataandscrapedAt
You can export the dataset as JSON, CSV, Excel, XML, RSS, or HTML, or read the same rows from the Apify API.
🚀 How to run it
- Open the Input tab.
- Enter an origin airport IATA code, such as
BVAorSTN. - Enter a destination airport IATA code, such as
BHXorDUB. - Pick the outbound departure date.
- Add a return date only when you want round-trip leg rows.
- Set adult, teen, child, and infant passenger counts.
- Optional: set a flexible date window, maximum price, sort order, and maximum fare rows.
- Run the Actor and open the dataset.
⚙️ Input options
Origin airport and Destination airport are three-letter IATA airport codes. The Actor normalizes them to uppercase and stops cleanly when both airports are the same.
Departure date is the outbound travel date to search. Return date is optional. When you add it, the Actor searches the reverse route as an inbound leg and returns those rows with legDirection: "inbound".
Flexible date window sets how many days around each travel date to include. Use 0 for the exact date only, or raise it when you want nearby fare options.
Adults, Teens, Children, and Infants set the passenger mix used for the fare search. The Actor stops cleanly before source traffic when the passenger mix is not accepted by the search rules, such as more infants than adults.
Maximum fare price keeps only fare rows at or below the submitted price in Ryanair's source currency.
Sort fare rows by controls result order before the limit is applied. Use Cheapest for price checks, Earliest departure for schedule checks, Shortest duration for quick trips, or Source order to keep Ryanair's order.
Maximum fare rows caps how many fare rows are saved and charged. Use a small limit for a quick first run.
🧾 Example input
{"originAirport": "STN","destinationAirport": "DUB","departureDate": "2026-07-15","flexDays": 3,"adults": 1,"teens": 0,"children": 0,"infants": 0,"sortBy": "cheapest","maxResults": 25}
📊 Example output
{"type": "ryanair_fare","rank": 1,"source": "Ryanair","tripType": "oneWay","legDirection": "outbound","departureDate": "2026-07-15","returnDate": null,"price": {"total": 19.99,"currency": "GBP","passengers": [{"type": "ADT","count": 1,"amount": 19.99,"total": 19.99}]},"currency": "GBP","flightNumber": "FR256","carrierCode": "FR","carrierName": "Ryanair","departureAirport": {"code": "STN","name": "London (Stansted)","city": "London (Stansted)","country": null,"countryCode": null},"arrivalAirport": {"code": "DUB","name": "Dublin","city": "Dublin","country": null,"countryCode": null},"localDepartureTime": "22:45","localArrivalTime": "00:05","duration": "1 hr 20 min","durationMinutes": 80,"passengers": {"adults": 1,"teens": 0,"children": 0,"infants": 0,"total": 1},"availability": {"faresLeft": 3,"status": "available"},"fare": {"fareClass": null},"links": {"route": "https://www.ryanair.com/gb/en/trip/flights/select?...","booking": "https://www.ryanair.com/gb/en/trip/flights/select?..."},"sourceMetadata": {"sourceCurrency": "GBP","sourceFetchedAt": "2026-06-11T14:53:09.122Z"},"scrapedAt": "2026-06-11T14:53:11.878Z"}
💳 Pricing
This Actor uses pay-per-event pricing. You are charged once for each accepted Ryanair fare option saved to the dataset.
Set Maximum fare rows to control the upper bound for one run. Runs with no matching fares complete successfully and do not save placeholder rows.
⚠️ Limits and caveats
- Prices and availability can change after the run. Use the booking link to verify the fare before acting on it.
- Currency is returned from Ryanair's source response. The Actor does not convert prices.
- Round-trip searches return outbound and inbound leg rows, not paired booking itineraries.
- No-flight routes, sold-out dates, and unavailable source responses can produce zero rows.
- The Actor does not require Ryanair credentials, cookies, or user-provided proxy settings.
❓ FAQ
🔌 Can I use this as a Ryanair API?
Yes. Run the Actor from Apify Console, call it through the Apify API, schedule recurring runs, or connect results to webhooks and integrations. The output is saved as structured dataset rows.
🔁 Does it support round trips?
Yes. Add returnDate and the Actor searches the reverse route as the inbound leg. Output rows use legDirection so you can separate outbound and inbound fares.
📅 Can I search flexible Ryanair fares?
Yes. Set flexDays to include dates around the submitted departure date and return date. Use 0 when you only want the exact travel date.
🎟️ Does it book flights?
No. It extracts public Ryanair fare data and includes Ryanair links for follow-up. It does not reserve, hold, or buy tickets.
📝 Changelog
- 0.1: Initial release.
🆘 Support
For issues, questions, or feature requests, file a ticket and I'll fix or implement it in less than 24h 🫡
🔗 Other actors
- Flight Scraper ↗ - Compare public itinerary prices, airlines, times, stops, duration, and booking links from multiple flight sources.
- EasyJet Scraper ↗ - Extract EasyJet route fares, flight numbers, local times, duration, airport details, and booking links.
- Award Flights Scraper ↗ - Search award flight availability by route, date window, cabin, and loyalty program.
- Realtor Scraper ↗ - Scrape Realtor.com property listings with prices, addresses, photos, agents, and property details.
- Business Address Scraper ↗ - Find public business addresses from company websites and keep source evidence for each row.
Made with ❤️ by Maxime Dupré