Никто не продает веб-скрейпинг в одинаковых единицах
Bright Data тарифицирует Web Unlocker за тысячу requests. Oxylabs продает Web Unblocker за гигабайт. Firecrawl списывает один кредит за страницу. Zyte берет плату за тысячу успешных responses, разделяя их на пять уровней сложности. Apify выставляет счета за compute unit, то есть за один гигабайт RAM, занятый в течение часа.
Пять провайдеров, пять разных единиц. Ни одна из них не переводится в другую без метрики, которую вам придется измерять самостоятельно. И ни один провайдер не публикует эту цифру, потому что она зависит от вашего трафика, а не от их продукта.
Мы изучили страницы с ценами всех пяти сервисов по состоянию на 8 сентября 2026 года. Вот что они предлагают и что получается при точном расчете.
Быстрое сравнение
| Провайдер / продукт | Единица тарификации | Базовые цены на 8 сентября 2026 года |
|---|---|---|
| Bright Data Web Unlocker | за 1K requests | $1.50/1K pay-as-you-go, $1.30/1K на тарифе $499 |
| Bright Data Browser API | за GB | от $5/GB |
| Oxylabs Web Unblocker | за GB | $9.40/GB при 8GB, $8.60/GB при 38GB, $7.50/GB при 88GB |
| Oxylabs Web Scraper API | за 1K results | от $0.25/1K |
| Firecrawl | за страницу (1 кредит) | $83/месяц при оплате за год за 100K кредитов, то есть $0.83 за 1K страниц |
| Zyte API | за 1K успешных responses, 5 уровней сайтов | от $0.13 до $1.27/1K по HTTP, от $1.01 до $16.08/1K с рендерингом |
| Apify | compute unit (1 GB RAM на один час) | $0.20/CU, $0.13/CU на тарифе $999 |
Из этой таблицы сразу следуют два вывода.
Прайс-лист Zyte дает разброс цен в 124 раза. Один провайдер, одна единица измерения, одна строка в счете: простой сайт по HTTP стоит $0.13 за тысячу, а сложный сайт с рендерингом в браузере стоит $16.08. Любая попытка назвать стоимость «за тысячу requests» как сопоставимую цифру означает выбор одной из крайних точек этого огромного диапазона.
А Bright Data меняет единицы тарификации прямо внутри своей продуктовой линейки. Web Unlocker продается за request. Browser API продается за гигабайт. Это не случайность. Это важный маркер, и далее мы разберем, о чем именно он говорит.
Что на самом деле дает один гигабайт
Главная переменная в любых расчетах, средний вес страницы, и публичная статистика здесь выглядит сурово.
Согласно Web Almanac 2025 от HTTP Archive, медианный размер мобильной главной страницы в крауле за июль 2025 года составил 2 559 KB, что на 8.4% больше, чем годом ранее. Если разбить эту медианную страницу по типам контента, получится 911 KB изображений, 632 KB кода JavaScript, 122 KB шрифтов, 77 KB стилей CSS.
И всего 22 KB HTML.
Именно последнее число имеет значение, поскольку HTML-документ обычно остается единственной частью, которую вы парсите. На медианной странице это 0.86% от общего объема байтов, загружаемых при полном рендеринге в браузере. Остальные 99%, это балласт, за передачу которого вы платите.
Посчитаем это на примере тарифа Oxylabs на 8 GB по цене $9.40/GB:
- Загрузка только HTML при весе страницы 22 КБ дает примерно 45 000 страниц на один гигабайт. Это около $0.21 за 1 000 страниц.
- Полный рендеринг страницы при весе 2 559 КБ дает около 390 страниц на один гигабайт. Это около $24 за 1 000 страниц.
Один и тот же тариф. Одинаковая цена на сайте. Разница в 116 раз, которая полностью зависит от настройки в вашем коде.
Теперь сравним это с Firecrawl. При цене $83 за 100 000 кредитов на годовом плане (один кредит за страницу) вы платите $0.83 за 1 000 страниц независимо от того, весит страница 20 КБ или 4 МБ. По сравнению с загрузкой чистого HTML тарификация за гигабайт примерно в четыре раза дешевле. По сравнению с полным рендерингом она примерно в 29 раз дороже.
Точка пересечения находится около 100 килобайт
Если посчитать, обе модели тарификации сходятся на определенном размере страницы. $0.00083 за страницу у Firecrawl, разделенные на $9.40 за гигабайт у Oxylabs, дают 88 КБ. Если взять помесячную оплату Firecrawl вместо годовой ($99.50 за те же 100 000 кредитов), точка пересечения сместится к 106 КБ. Ниже этой границы выгоднее оплата за гигабайт. Выше побеждает фиксированная цена за страницу, и разрыв быстро растет, потому что вес страницы ничем не ограничен сверху.
Вот показательная деталь. Oxylabs публикует собственную конверсию, прямо ее так не называя: триал Web Unblocker описан как "1GB (up to 10k results)". Это ровно 100 КБ на результат, что попадает в диапазон, который мы только что вывели из прайс-листов двух других вендоров. Их собственные расчеты исходят из того, что вы загружаете документы, а не рендерите галереи.
Поэтому если у вас тарификация по трафику и вы используете браузер, ваш главный рычаг вовсе не выбор провайдера. Это блокировка изображений и шрифтов до загрузки страницы, поскольку на медианной странице они составляют 1 033 из 2 559 КБ. Мы предпочитаем прямо сказать об этом, а не делать вид, будто итоговый счет определяет логотип в инвойсе.
Две важные оговорки. Это медианные цифры по всему вебу, а ваши цели это не весь веб (страницы ритейла и тревела весят больше, JSON endpoints намного меньше). Кроме того, отрендеренная страница с заблокированными медиафайлами может весить заметно меньше медианы, что сдвигает точку пересечения в вашу пользу без каких-либо изменений в тарифной сетке. Та же математика определяет, когда этап извлечения данных через LLM перестает окупаться: цена за единицу никогда не бывает главной цифрой, важна только стоимость одной сохраненной записи.
Что считается оплачиваемым действием: второй фактор
Единица учета это один вопрос. Что именно запускает счетчик, это другой вопрос, который упустить еще проще.
Bright Data рекламирует оплату "только за успех" в Web Unlocker. Zyte указывает цену "за 1 000 успешных ответов". Firecrawl списывает кредит за каждый API request к endpoint. При тарификации за гигабайт условия успешности нет вообще: байты прошли по сети, значит счет выставлен, и страница с проверкой CAPTCHA, которую вы просто выбросите, оплачивается как полноценная страница.
Это важнее, чем кажется, потому что страница с проверкой или заглушкой обычно возвращается со статусом HTTP 200. Если вашим критерием успеха является только статус-код, логика повторных попыток и итоговый счет разойдутся с реальным набором данных. Мы писали об этом расхождении в статье Validate Rules Now Decide What Counts as Success, и именно эта уязвимость превращает частичную блокировку в незаметный пробел во временном ряду.
Какую модель тарификации выбрать
Оплата за гигабайт подходит, если вы скачиваете документы без рендеринга, а ваши цели состоят из текста: поисковая выдача, JSON endpoints, страницы каталогов, sitemaps. При размере от 20 до 50 КБ на страницу оплата за трафик оказывается самым дешевым вариантом на рынке с большим отрывом.
Оплата за страницу или за request подходит, если вы используете рендеринг, если на целевых сайтах много медиаконтента или если вы просто не можете предсказать вес страниц по длинному списку сайтов. Вы переплачиваете на небольших страницах, чтобы зафиксировать верхний предел расходов на тяжелых, и при рендеринге этот лимит полностью себя оправдывает.
Оплата по тарифам сайтов (tier), как у Zyte, подходит, если список целей стабилен и вы точно знаете, к какому уровню относится каждый ресурс. Эта модель честно учитывает то, что остальные усредняют: сбор данных со сложных сайтов стоит дороже. Она плохо подходит, если список целевых ресурсов меняется каждую неделю.
Оплата вычислительных ресурсов (compute units) подходит, если вы запускаете длительный краулинг со своим кодом прямо на платформе. В этом случае тарифицируется работа машины, а не объем данных, что дает преимущество быстрому парсеру и наказывает медленный. Это единственная модель в списке, где оптимизация вашего кода напрямую снижает сумму в счете.
Ни одна из этих моделей не является уловкой. Каждая из них отражает расчет провайдера на определенный профиль трафика своих клиентов. Ошибка заключается не в выборе неподходящей единицы тарификации. Ошибка состоит в прямом сравнении двух коммерческих предложений с разными метриками и выборе меньшей цифры без пересчета.
Цена растет, даже если тарифы никто не поднимает
Прежде чем соглашаться на условия любого провайдера, включая нас, измерьте два показателя на своем недельном трафике: средний объем данных на один fetch и долю запросов, вернувших полезные сохраненные данные. Любое предложение из этой статьи легко пересчитать при наличии этих двух чисел, и ни одно нельзя объективно оценить без них.
Затем обратите внимание на динамику за следующий год. Медианная главная страница за двенадцать месяцев выросла на 7.8%, и этот рост продолжается. Если ваш счет привязан к объему трафика, это означает ежегодное скрытое подорожание, о котором никто не обязан предупреждать и которое не обсуждается в договоре.
В FourA мы возвращаем стоимость каждого вызова прямо в response, поэтому фактические расходы видны сразу в процессе работы, а не собираются задним числом по счету в конце месяца. Это не решит за вас, какую модель выбрать. Но это покажет, сколько вы реально тратите на каждую сохраненную страницу, а именно на этом показателе и строится весь расчет.