specification: FinOps Framework specificationVersion: '1.0' alignedWith: framework: FinOps Foundation Framework frameworkUrl: https://www.finops.org/framework/ dataSpec: FOCUS dataSpecVersion: '1.3' dataSpecUrl: https://focus.finops.org/focus-specification/v1-3/ provider: Zyte providerId: zyte publisherName: Zyte serviceCategory: API created: '2026-05-04' # 2026-05-04 bulk-sweep scaffold, REPLACED 2026-08-29 from Zyte's own published # pricing, rate-limit and Stats API documentation. The FinOps Framework skeleton # below is ours; every meter, dimension and price is Zyte's. method: searched source: >- https://docs.zyte.com/zyte-api/pricing.html, https://docs.zyte.com/scrapy-cloud/pricing.html, https://docs.zyte.com/zyte-api/usage/stats/index.html generated: '2026-08-29' modified: '2026-08-29' tags: - Crawling - Data Extraction - Scraping - FinOps - Cost Management - FOCUS description: FinOps framework definition for the Zyte API surface. Provides a FOCUS-aligned mapping for cost allocation, usage measurement, and unit-economics reporting across the provider's APIs. principles: - name: Visibility description: Make API consumption costs visible to engineering, product, and finance teams in near real-time. - name: Allocation description: Tag every chargeable API call with the consuming team, environment, application, and feature so cost can be allocated. - name: Optimization description: Continuously evaluate request patterns, caching, batching, and tier selection to reduce cost per useful unit of work. - name: Accountability description: Establish budget owners and chargeback or showback flows for each consuming team. domains: - name: Understand Usage and Cost capabilities: - Data Ingestion - Allocation - Reporting and Analytics - Anomaly Management - name: Quantify Business Value capabilities: - Planning and Estimating - Forecasting - Budgeting - Benchmarking - Unit Economics - name: Optimize Usage and Cost capabilities: - Architecting for Cloud - Rate Optimization - Workload Optimization - Cloud Sustainability - Licensing and SaaS - name: Manage the FinOps Practice capabilities: - FinOps Practice Operations - FinOps Education and Enablement - Invoicing and Chargeback - Onboarding Workloads - Intersecting Disciplines billingModel: pricingCategory: Usage-Based billingFrequency: Monthly billingCurrency: USD chargeCategories: - Usage - Purchase - Tax - Credit - Adjustment chargeFrequency: Recurring focusColumns: ServiceName: Zyte ServiceCategory: Developer Tools / API ProviderName: Zyte PublisherName: Zyte InvoiceIssuerName: Zyte PricingCategory: Usage-Based PricingUnit: request BillingCurrency: USD ChargeCategory: Usage meters: - name: successful_requests description: >- Billable Zyte API requests. ONLY successful responses are charged; rate-limiting (429/503) and unsuccessful (4xx/5xx/520/521) responses are free, so the billable count is strictly lower than the request count. unit: request aggregation: sum dimensions: - domain - request_type - request_tier - apikey_label - tag - extraction_type - extraction_from - requested_feature source: https://docs.zyte.com/zyte-api/pricing.html - name: request_tier_base_cost description: >- Base cost of a request, set by the tier assigned to the (target website, request type) pair. 5 HTTP tiers and 5 browser tiers. Tier assignments are reviewed quarterly with 2 weeks notice. unit: USD aggregation: sum dimensions: - domain - request_type - name: screenshot_charges description: Screenshot add-on. unit: USD unit_price: '0.002' aggregation: sum - name: extraction_charges description: >- Automatic extraction add-on, per data type. serp extraction is free. unit: USD unit_price_range: 0.0004-0.0016 aggregation: sum dimensions: - extraction_type - name: custom_attribute_tokens description: >- LLM custom-attribute extraction with method "generate", billed on tokens. unit: token unit_price_input: 0.002 per 1k input tokens unit_price_output: 0.01 per 1k output tokens aggregation: sum - name: custom_attribute_extract description: Custom-attribute extraction with method "extract", flat fee. unit: USD unit_price: '0.001' aggregation: sum - name: action_charges description: Browser actions, metered on CPU and network consumption. unit: USD aggregation: sum - name: network_capture_charges description: Network captures, metered on output size. unit: USD aggregation: sum - name: residential_network_consumption description: >- Extended geolocations and device residential IPs carry a different base cost plus network-consumption charges. unit: GB aggregation: sum - name: scrapy_cloud_units description: Scrapy Cloud compute units. unit: unit-month unit_price: '9.00' aggregation: sum allocation: primary_key: request tags description: >- THE ALLOCATION MECHANISM. Zyte API requests accept arbitrary customer `tags`, and the Stats API exposes tags as a filter and grouping dimension. This is the provider-supported way to attribute spend to a team, environment, application or spider — there is no separate cost-allocation product. secondary_keys: - apikey_labels - domains - extraction_type - requested_features reporting_api: https://zyte-api-stats.zyte.com/api/v1/stats reporting_auth: Zyte dashboard API key + organization_id reporting_note: >- Page size is capped at 500 rows; the default window is the last 7 days. gap: >- There is no cost/usage export, no FOCUS-shaped billing file, and no webhook or budget-alert API. Spending alerts and limits are configured in the console only. controls: - name: Spending limit description: >- Hard monthly ceiling. When reached the account is SUSPENDED (403 /auth/account-suspended) until the next billing month or until the limit is raised. Standard PAYG default is $100/month. scope: account - name: Spending alerts description: Customer-defined alerts and soft limits below the hard ceiling. scope: account - name: Cost estimator description: Pre-purchase estimate tool; human web UI, not an API. url: https://app.zyte.com/o/cost-estimator - name: Volume discount ladder description: >- 25% at $100 monthly commitment, 40% at $200, 48% at $350, 52% at $500. Applied per request. Commitment is non-refundable if unused. apis: - name: Zyte API baseURL: https://api.zyte.com/v1 tags: - Crawling - Data Extraction - Scraping serviceName: Zyte serviceCategory: API unitEconomics: - name: Cost per successful response metric: billed_cost / successful_requests note: >- The only unit that maps cleanly onto Zyte's billing rule. Cost per ATTEMPTED request is meaningless here because retries are free. - name: Effective discount realised metric: (list_cost - billed_cost) / list_cost note: Compare against the committed ladder rate (25/40/48/52%). - name: Commitment utilisation metric: actual_spend / monthly_commitment note: >- Below 1.0 means paying for unused commitment — Zyte issues no refund for under-use, so this is the number that decides whether to step down a tier. - name: Cost per extracted item metric: billed_cost / items_extracted note: Requires client-side item counting; Zyte reports requests, not items. - name: Ban tax metric: successful_requests / total_requests note: >- Free to measure via the Stats API response_codes filter. A falling ratio means more retries and longer wall-clock time even though the failures themselves cost nothing. maintainers: - FN: Kin Lane email: kin@apievangelist.com