Skip to content

Analytics & usage

bytetourist records every request it sends to a node as an event and aggregates it for usage, billing, and dashboards, without slowing the proxy down. Requests it refuses up front (bad key, plan, credit or rate limits, no free node) aren’t recorded.

The proxy stays fast: after each response, the request is recorded asynchronously, so measurement never sits between you and your data. The raw event log is the immutable source of truth for billing proxied requests; the dashboards query it directly. Crawl pages rendered with JavaScript or screenshotted are charged by the render service straight against your balance, so those charges aren’t in the event log.

Each event carries: timestamp, org id, request id, node id and egress IP, target host, method, URL, status code, latency (measured at the node), bytes in/out, the node’s region and country, credits charged, and any error. Events are retained for 90 days.

Each event is stamped with the credits it cost. Every 30 seconds those credits are summed per org per one-minute window and written to the credit ledger as debits (your live balance is debited as each response completes). Because the raw event log is immutable, usage is auditable and re-computable within the 90-day retention.

In the dashboard:

  • Today: today’s request count, the success rate over the last 24 hours, and credits left from this month’s allotment.
  • Credits vs. plan: credits spent against your monthly allotment, with what remains and % utilisation.
  • Recent requests: your org’s 25 most recent requests, with status, latency, and target host.
  • Trends: success/error-rate time series.

Node health and in-flight counts are measured continuously and fed back into routing, so lowest_latency routing and the circuit breaker act on fresh per-node data, and the fleet makes autoscaling decisions on the same signal.