Preise und Traffic
Gehostete Browser werden pro GB Traffic aus einem Prepaid-Guthaben bezahlt. Was darin enthalten ist, was als Traffic zählt und wie Sie weniger davon verbrauchen.
Preise
- €1.00 pro GB, Residential-Proxy inklusive. Standardmäßig geht jede Session über eine Residential-IP ins Internet: einen echten privaten Anschluss bei einem Endkunden-Provider, keine Rechenzentrums- oder Hosting-Adresse. Genau diesen Traffic bezahlen Sie mit den €1.00; eine separate Proxy-Rechnung gibt es nicht.
- Gemessen wird der Traffic zwischen Browser und Internet, Upload und Download zusammengerechnet (1 GB = 109 Byte). Siehe Was als Traffic zählt.
- Keine Kosten für Laufzeit, Sessions oder CDP-Nachrichten.
- Der Challenge-Service mit unserem Key (aus, solange Sie ihn nicht nutzen): jede gelöste Challenge zum eigenen Preis des Lösungsdienstes × 1.5, abgebucht von Ihrem Guthaben.
- Prepaid: Guthaben laden Sie im Dashboard auf. Ein Browser braucht zum Start mindestens €0.50, und jede Session ist auf den Betrag begrenzt, den das Guthaben beim Start abdecken kann – geteilt zwischen allen Browsern, die gerade laufen (ist Ihr eigenes
maxGbniedriger, gilt dieses). Ein laufender Browser wird gestoppt, sobald das Guthaben null erreicht (die Nutzung wird etwa alle 15 Sekunden gemeldet, daher kann die letzte Meldung es knapp unter null drücken).
Was als Traffic zählt
Gezählt wird jedes Byte, das der Browser an eine Website sendet oder von ihr empfängt, und zwar direkt auf der Leitung – genau so, wie ein Proxy-Anbieter zählt. Für eine typische Seite heißt das:
- Gezählt: die Seite selbst und alles, was sie nachlädt: Skripte, Stylesheets, Bilder, Fonts, Videos, API-Aufrufe, Werbung und Tracker, WebSockets, dazu Request-Header, Cookies und der Verschlüsselungs-Overhead (TLS) jeder Verbindung. Seiten laden weiter, während Sie warten, daher zählen auch Polling im Hintergrund und Analytics mit.
- Nicht gezählt: die CDP-Verbindung zwischen Ihrem Code und dem Browser (Befehle, Ergebnisse, Screenshots, PDFs, ausgelesene Seiteninhalte), die Live-Ansicht im Dashboard und alles, was der Browser gar nicht erst abruft (Requests, die Sie blockieren, Dateien aus seinem eigenen Cache).
Als grobe Orientierung: Eine schlanke Textseite kostet deutlich unter 1 MB, eine typische News- oder Shop-Seite 2 bis 5 MB und eine schwere Single-Page-App oder alles mit Video 10 MB oder mehr. Bei €1.00 pro GB ergeben 1.000 Seiten à 3 MB rund 3 GB. Die echten Zahlen zeigt Ihre eigene Session: Das Dashboard listet für jede Session den Traffic und die 20 Sites mit den meisten Bytes, und maxGb deckelt eine Session, damit eine außer Kontrolle geratene Seite nicht Ihr Guthaben auffrisst.
Traffic reduzieren
Den Großteil des Gewichts einer Seite macht meist aus, was ein Skript gar nicht braucht. Die größten Einsparungen, der Reihe nach:
- Bilder, Medien und Fonts blockieren. Oft die Hälfte einer Seite oder mehr. Blockieren Sie sie per URL-Muster im Browser, dann verlassen die Anfragen den Browser gar nicht erst und werden nie berechnet – und der Browser behält seinen Cache:
// Playwright: block by URL pattern over CDP (keeps the browser cache on)
const cdp = await context.newCDPSession(page);
await cdp.send("Network.enable");
await cdp.send("Network.setBlockedURLs", {
urls: ["*.png", "*.jpg", "*.jpeg", "*.gif", "*.webp", "*.svg", "*.woff", "*.woff2", "*.ttf", "*.mp4", "*.webm"],
});
// Puppeteer: the same, through its CDP session
const client = await page.createCDPSession();
await client.send("Network.enable");
await client.send("Network.setBlockedURLs", { urls: ["*.png", "*.jpg", "*.jpeg", "*.gif", "*.webp", "*.woff2"] });Verwenden Sie page.route() / context.route() und die Request-Interception von Puppeteer nicht nur, um Requests zu verwerfen: Sie schalten den Browser-Cache ab, sodass jede Seite ihre Skripte und Styles erneut herunterlädt – und das kostet mehr, als die eingesparten Bilder bringen. Setzen Sie sie nur ein, wenn Sie Requests verändern müssen. Die Option adblock blockiert Werbung und Tracker außerdem für Sie.
- Werbung, Analytics und Tracker blockieren. Brechen Sie Requests an Drittanbieter-Domains ab, die Sie nicht brauchen. Die Top-Sites-Liste der Session im Dashboard zeigt, welche Sie am meisten kosten.
- Nicht länger warten als nötig.
waitUntil: "networkidle"wartet auf alles, was eine Seite lädt, auch auf Werbung. Nehmen Sie lieber"domcontentloaded"und warten Sie danach auf das eine Element, das Sie wirklich brauchen. - Den Browser schließen, sobald Sie fertig sind. Eine offene Seite pollt im Hintergrund weiter. Senken Sie
idleTimeoutSec, damit sich eine vergessene Session von selbst schließt. - Einen Browser für viele Seiten nutzen. Dank seines Caches werden Skripte und Styles, die sich Seiten derselben Site teilen, nur einmal geladen statt für jede Seite. Navigieren Sie in derselben Session, statt für jede URL eine neue zu starten.
- Wenn möglich, die API der Site aufrufen. Sobald der Browser eine funktionierende Session hat, ist ein
fetch()aus der Seite heraus nach dem benötigten JSON nur ein Bruchteil dessen, was ein erneutes Laden der Seite kostet. - Deckeln. Setzen Sie
maxGbfür jede Session, damit eine unerwartet schwere Seite stoppt, statt Ihr Guthaben leerzuziehen.
Blocking funktioniert auf den meisten Sites, einige prüfen aber, ob Bilder oder Fonts tatsächlich geladen wurden. Verhält sich eine Site mit aktivem Blocking anders, lassen Sie diesen Typ für diese Site wieder zu.
Möchten Sie es erst in Aktion sehen? Der Playground führt ein Skript in einem Cloud-Browser direkt aus Ihrem Dashboard aus, mit Live-Ansicht, Konsolenausgabe und Screenshots nebeneinander.