Không có nhà cung cấp nào tính giá Web Scraping theo cùng một đơn vị
Bright Data định giá Web Unlocker theo mỗi 1.000 request. Oxylabs tính giá Web Unblocker theo gigabyte. Firecrawl tính phí một credit cho mỗi trang. Zyte tính phí theo mỗi 1.000 response thành công, chia thành năm bậc độ khó. Apify lập hóa đơn theo compute unit, tương đương một gigabyte RAM được duy trì trong một giờ.
Năm nhà cung cấp, năm đơn vị. Không có đơn vị nào chuyển đổi được sang đơn vị khác mà không cần một con số do bạn tự đo lường, và không nhà cung cấp nào công bố con số đó, vì nó phụ thuộc vào lưu lượng truy cập của bạn chứ không phải sản phẩm của họ.
Chúng tôi đã đọc toàn bộ trang giá của năm nhà cung cấp vào ngày 8 tháng 9 năm 2026. Dưới đây là thông tin họ đưa ra và kết quả từ các phép tính.
So sánh nhanh
| Nhà cung cấp / sản phẩm | Đơn vị tính phí | Giá niêm yết, ngày 8 tháng 9 năm 2026 |
|---|---|---|
| Bright Data Web Unlocker | mỗi 1K request | $1,50/1K trả theo mức sử dụng, $1,30/1K ở gói $499 |
| Bright Data Browser API | mỗi GB | từ $5/GB |
| Oxylabs Web Unblocker | mỗi GB | $9,40/GB ở mức 8GB, $8,60/GB ở mức 38GB, $7,50/GB ở mức 88GB |
| Oxylabs Web Scraper API | mỗi 1K kết quả | từ $0,25/1K |
| Firecrawl | mỗi trang (1 credit) | $83/tháng thanh toán theo năm cho 100K credit, tức $0,83 mỗi 1K trang |
| Zyte API | mỗi 1K response thành công, 5 bậc trang web | $0,13 đến $1,27/1K qua HTTP, $1,01 đến $16,08/1K khi render |
| Apify | compute unit (1 GB RAM trong một giờ) | $0,20/CU, $0,13/CU ở gói $999 |
Có hai điểm đáng chú ý từ bảng đó.
Bảng giá của chính Zyte chênh lệch tới 124 lần. Cùng nhà cung cấp, cùng đơn vị, cùng dòng trên cùng một hóa đơn: một trang web đơn giản tải qua HTTP có giá $0,13 mỗi nghìn request, một trang web phức tạp được render trong trình duyệt có giá $16,08. Bất kỳ ai báo giá "mỗi nghìn request" như một con số có thể so sánh được đều đang trích dẫn một đầu của một khoảng chênh lệch rộng như vậy.
Và Bright Data đổi đơn vị ngay trong danh mục sản phẩm của mình. Web Unlocker được bán theo request. Browser API được bán theo gigabyte. Đó không phải là sự cẩu thả. Đó là dấu hiệu rõ ràng, và phần còn lại của bài viết này sẽ giải thích điều đó có ý nghĩa gì.
Một Gigabyte thực sự mua được những gì
Con số quyết định mọi phép chuyển đổi là dung lượng trang trung bình của bạn, và dữ liệu công khai về con số này rất khắc nghiệt.
Web Almanac 2025 của HTTP Archive ghi nhận dung lượng trang chủ di động trung vị ở mức 2.559 KB theo đợt crawl tháng 7 năm 2025, tăng 8,4% trong một năm. Phân tích trang trung vị đó theo loại nội dung gồm có 911 KB hình ảnh, 632 KB JavaScript, 122 KB font chữ, 77 KB CSS.
Và 22 KB HTML.
Con số cuối cùng mới là con số quan trọng, vì tài liệu HTML thường là phần duy nhất bạn parse. Trên trang trung vị, nó chỉ chiếm 0,86% số byte mà một lượt render đầy đủ trên trình duyệt tải về. 99% còn lại là những thứ đi kèm mà bạn phải trả tiền để tải.
Áp dụng con số đó vào gói 8 GB của Oxylabs với giá $9,40/GB:
- Chỉ tải HTML, ở mức 22 KB một trang, một gigabyte tương đương khoảng 45.000 trang. Con số đó rơi vào khoảng $0,21 cho mỗi 1.000 trang.
- Render toàn bộ trang, ở mức 2.559 KB, một gigabyte tương đương khoảng 390 trang. Con số đó rơi vào khoảng $24 cho mỗi 1.000 trang.
Cùng một gói. Cùng một mức giá niêm yết. Chênh lệch 116 lần, được quyết định hoàn toàn bởi một thiết lập trong chính mã nguồn của bạn.
Bây giờ hãy đặt Firecrawl bên cạnh. Với mức giá $83 cho 100.000 credit theo gói năm, một credit cho mỗi trang, bạn trả $0,83 cho mỗi 1.000 trang bất kể trang nặng 20 KB hay 4 MB. So với việc chỉ tải HTML, cách tính phí theo gigabyte rẻ hơn khoảng bốn lần. So với render toàn bộ, nó đắt hơn khoảng 29 lần.
Điểm giao nhau nằm gần 100 Kilobyte
Tính toán một chút, hai cách đo lường này sẽ gặp nhau ở một dung lượng trang cụ thể. $0,00083 một trang của Firecrawl chia cho $9,40 một gigabyte của Oxylabs tương đương 88 KB. Nếu chọn Firecrawl theo từng tháng thay vì theo năm ($99,50 cho cùng 100.000 credit), điểm giao nhau sẽ chuyển sang 106 KB. Dưới mức đó, tính phí theo gigabyte chiếm ưu thế. Trên mức đó, tính phí cố định theo trang thắng thế, và khoảng cách giãn ra rất nhanh, vì dung lượng trang không có giới hạn trần.
Đây là điểm đáng chú ý. Oxylabs công bố mức quy đổi của riêng họ mà không gọi tên trực tiếp: bản dùng thử miễn phí Web Unblocker được mô tả là "1GB (tối đa 10k kết quả)". Tức là 100 KB mỗi kết quả, nằm đúng trong khoảng dung lượng chúng tôi vừa tính từ bảng giá của hai nhà cung cấp khác. Phép tính của chính họ mặc định bạn đang tải tài liệu, chứ không phải render thư viện ảnh.
Vì vậy, nếu bạn đang dùng gói tính theo byte và điều khiển trình duyệt, đòn bẩy lớn nhất không nằm ở nhà cung cấp. Nó nằm ở việc chặn hình ảnh và font chữ trước khi trang tải, vì trên trang web trung bình, phần đó chiếm 1.033 trong tổng số 2.559 KB. Chúng tôi muốn chỉ rõ điều đó cho bạn hơn là giả vờ rằng logo trên hóa đơn mới là thứ quyết định chi phí.
Hai lưu ý thực tế. Đây là các số liệu trung vị trên toàn bộ web, và mục tiêu của bạn không phải là toàn bộ web (các trang bán lẻ và du lịch thường nặng hơn, các endpoint JSON nhẹ hơn nhiều). Một trang được render khi đã chặn media có thể nhẹ hơn mức trung vị rất nhiều, giúp điểm giao nhau dịch chuyển theo hướng có lợi cho bạn mà không cần thay đổi bất kỳ điều gì trên bảng giá. Cùng một phép tính toán học này quyết định khi nào một bước trích xuất bằng LLM không còn hiệu quả về chi phí: đơn giá chưa bao giờ là con số đáng chú ý, giá trên mỗi bản ghi bạn giữ lại mới là thứ quan trọng.
Yếu tố nào được tính phí là trục thứ hai
Đơn vị tính là một chuyện. Điều gì kích hoạt bộ đếm cước lại là chuyện khác, và điều này rất dễ bị bỏ qua.
Bright Data quảng cáo "chỉ trả tiền cho thành công" trên Web Unlocker. Zyte định giá "trên 1.000 response thành công". Firecrawl trừ một credit cho mỗi request API, tùy theo endpoint. Với cách tính theo gigabyte, hoàn toàn không có điều kiện thành công: dữ liệu đã truyền đi, nghĩa là bạn bị tính phí, và một trang thử thách bị loại bỏ vẫn là một trang bạn đã trả tiền mua.
Điều này quan trọng hơn so với vẻ ngoài của nó, bởi vì một thử thách hoặc trang trung gian thường được trả về kèm theo HTTP 200. Nếu định nghĩa về sự thành công của bạn chỉ dựa vào mã trạng thái, logic retry và hóa đơn của bạn sẽ không đồng nhất với tập dữ liệu thực tế. Chúng tôi đã viết về sự bất đồng đó trong Validate Rules Now Decide What Counts as Success, và đó cũng chính là nguyên nhân biến việc bị chặn một phần thành lỗ hổng âm thầm trong chuỗi thời gian.
Ai Nên Mua Đơn Vị Nào
Mua theo gigabyte nếu bạn lấy tài liệu thay vì render chúng, và mục tiêu của bạn là văn bản: kết quả tìm kiếm, JSON endpoint, trang danh sách, sitemap. Với kích thước 20 đến 50 KB mỗi trang, định giá theo byte là lựa chọn rẻ nhất trên thị trường và không có gì khác cạnh tranh được.
Mua theo trang hoặc theo request nếu bạn render, nếu mục tiêu của bạn chứa nhiều media, hoặc nếu bạn đơn giản là không thể dự đoán dung lượng trang trên một danh sách dài các trang web ngách. Bạn chấp nhận trả mức giá cao hơn ở quy mô nhỏ để giới hạn mức chi phí tối đa ở quy mô lớn, và đối với khối lượng công việc cần render thì mức trần đó rất có giá trị.
Mua theo tier, như cách Zyte cung cấp, nếu danh sách mục tiêu của bạn ổn định và bạn biết mỗi trang thuộc tier nào. Mô hình này phản ánh trung thực điều mà mọi mô hình khác đều cào bằng: các trang khó thu thập luôn tốn kém hơn. Nó không phù hợp nếu danh sách mục tiêu của bạn thay đổi hàng tuần.
Mua đơn vị tính toán nếu bạn chạy các tác vụ crawl dài bằng code riêng trên nền tảng. Phương thức này tính tiền dựa trên máy chủ, không phải dữ liệu, do đó nó đem lại lợi thế cho parser nhanh và gây tốn kém cho parser chậm. Đây là mô hình duy nhất trong danh sách này mà việc tối ưu hóa code sẽ phản ánh trực tiếp lên hóa đơn.
Không có đơn vị nào trong số này là chiêu trò. Mỗi đơn vị là một giả định về lưu lượng truy cập điển hình, được đưa ra bởi nhà cung cấp hiểu rõ tệp khách hàng của họ. Sai lầm không nằm ở việc chọn sai đơn vị. Sai lầm là so sánh hai báo giá không cùng một đơn vị đo lường và vội vàng chọn con số rẻ hơn.
Giá Vẫn Tăng Dù Có Ai Tăng Hay Không
Trước khi nhận báo giá từ bất kỳ ai, kể cả chúng tôi, hãy đo lường hai con số từ lưu lượng truy cập thực tế của bạn trong một tuần: số byte trên mỗi lượt fetch, và tỷ lệ các lượt fetch trả về dữ liệu mà bạn thực sự giữ lại. Mọi báo giá trong bài viết này đều có thể quy đổi chuẩn xác khi bạn có hai con số đó, và không báo giá nào có thể quy đổi nếu thiếu chúng.
Sau đó, hãy theo dõi những gì xảy ra trong năm tới. Dung lượng trung bình của trang chủ đã tăng 7.8% trong mười hai tháng, và xu hướng này chỉ tăng chứ không giảm. Nếu hóa đơn của bạn được tính bằng byte, đó là một đợt tăng giá hàng năm mà không ai cần thông báo, trên một danh mục chi phí mà không ai thương lượng.
Tại FourA, chúng tôi trả về chi phí của từng lệnh gọi ngay trong response, giúp bạn theo dõi chi phí theo thời gian thực thay vì phải tính toán lại từ hóa đơn vào cuối tháng. Điều đó sẽ không chỉ cho bạn biết nên mua đơn vị nào. Nó sẽ cho bạn biết bạn đang thực sự chi tiêu bao nhiêu cho mỗi trang bạn giữ lại, và đó là con số quyết định toàn bộ vấn đề.