I run a small portfolio of scrapers on Apify. One of them pulls flight data out of Google Flights — fares, the full 100–150 itinerary list Google's own endpoint returns, the price calendar for up to a year, Explore destinations, booking options with seller prices.
I priced it the obvious way: a small fee per route searched, plus a fee per row returned. $0.01 per search, $0.001 per row. Both numbers look tiny.
Then I ran the real basket. A customer sweeping 1,000 routes and getting ~50 itineraries each — 50,000 rows — pays $60. The same job on the most popular Google Flights Actor in the category costs $30.60. I was the most expensive tool in a category where I had the best review score and almost no users.
The mistake is the double charge
A search and the rows it produces are one unit of work. Charging for both means the heavy user — the only user who pays real money — is punished exactly for the behaviour you want from them. Every serious competitor charges once: per row, or per search, never both.
Here is the same basket across the category, measured on public pricing on 21 September 2026, Free-plan tier, every run and page fee included:
| Actor | 50,000 flight rows |
|---|---|
| mine, before | $60.00 |
| competitor A (per row + run fee) | $50.50 |
| category leader (per page) | $30.60 |
| competitor B (per row, deep tier discounts) | $12.00 |
So: the per-search fee is gone. One event, $0.0002 per row — $0.20 per 1,000 flights. No run fee, no page fee, no proxy fee. Error rows and empty results are free, as they always were. The same 50,000-row job is now $10, and the platform's own plan tiers take it to $5.
Measure the cost before you cut the price
What made the cut safe was fifteen real runs, read from the API rather than guessed:
- $0.000011–0.000034 per row, including residential proxy.
- Proxy traffic: 0.045 MB per 100 rows. The Actor talks to Google's JSON endpoint, so there is no browser and no page weight.
- Margin at the deepest discount tier: 6x. At the top tier, 13x.
If you price before you measure, you are guessing in both directions at once: you either leave money on the table or sell below cost to the one customer who finally scales.
Two things I'd tell anyone pricing a pay-per-event scraper
1. Price the basket, not the event. Write down what your biggest realistic customer does in a month, then compute that single number for you and for every competitor. The per-event price tells you nothing — $0.03 per page can be cheaper than $0.001 per row, and usually is.
2. Check who pays the platform bill. Some Actors advertise $0.05 per 1,000 rows and pass compute and proxy usage to the buyer's own account on top. That is not a cheaper tool, it is a different invoice. Chasing that headline number is how you end up pricing below your own costs to beat a competitor who has no costs.
The third thing, which I'm testing now: the pricing page is a marketing surface. Three of the four most-used Actors in this category put the price in the title — $1/1K, ~$0.05/1K, $3.00/1k. Mine listed features. That is a free position in a buyer's mind and I was not using it.
The Actor, if you want to look at the shape of it: Google Flights Scraper. Feedback and feature requests genuinely decide what I build next — the last four features all came from one.
Top comments (0)