Skip to main content
Gateways pay Orchestrators. They do not charge clients.
The flags on this page control configuration options for what controlling compute job costs.
Gateways set price caps that control the maximum amount paid to Orchestrators per job. These caps apply regardless of operational mode - both on-chain and off-chain gateways configure the same pricing flags. The Operational mode determines context: on-chain gateways filter Orchestrators from an open marketplace, while off-chain gateways set safety ceilings for known Orchestrators specified via -orchAddr.

Pricing Mechanics

Livepeer workload fees are denominated in ETH (wei), with an option to configure caps in USD (converted at runtime via a Chainlink price feed). Gateways set caps on prices they are willing to pay. When the Gateway selects an Orchestrator, it checks the Orchestrator’s advertised price against the cap. Any Orchestrator above the cap is skipped for that job. If no Orchestrator is within the cap, the job fails unless -ignoreMaxPriceIfNeeded is enabled.

Pricing Configuration

Video Pricing

Video transcoding is priced per pixel. The gateway calculates fees based on the resolution and length of each transcoded segment. Video transcoding requires on-chain operational mode.Key flags:Fee calculation: The effective cap is maxPricePerUnit wei per pixelsPerUnit pixels. A 1920x1080 frame contains 2,073,600 pixels. With a cap of 1,000 wei per pixel and pixelsPerUnit of 1, that frame costs at most 2,073,600 wei (about 0.000002 ETH).Most operators leave pixelsPerUnit at the default of 1 and adjust only -maxPricePerUnit.
livepeer \
-gateway \
-maxPricePerUnit 1000 \
-pixelsPerUnit 1 \
...

USD pricing

To configure caps in USD instead of wei, pass a USD value:
-maxPricePerUnit 0.02USD
This requires a Chainlink ETH/USD price feed configured via -priceFeedAddr. The gateway converts the USD cap to wei at runtime using the oracle price.
A gateway configured with a fixed wei cap pays more or less in USD terms as ETH price moves. USD-denominated pricing with a Chainlink feed stabilises the effective cost but requires the oracle to be reachable and accurate.

Pricing Flag Reference

All pricing flags at a glance:

Pricing Cap Guidance

Discover current rates:Query Livepeer Explorer for the cheapest Orchestrators currently active on the required pipeline. Alternatively, use livepeer_cli to view connected Orchestrator pricing. Set the cap with headroom:
  1. Find the cheapest active Orchestrators on the required pipeline.
  2. Set the cap 20 to 30 percent above their current rate. This provides headroom during gas spikes without overpaying.
  3. Monitor job success rates. If jobs fail frequently, raise the cap. If all jobs succeed consistently, try lowering it gradually.
Orchestrator pricing behaviour:
  • Orchestrators can set per-gateway prices using -pricePerGateway, giving specific gateways custom rates based on relationships or volume.
  • Some Orchestrators enable autoAdjustPrice, which shifts their advertised rate based on current gas costs. A tight cap can briefly knock all Orchestrators out of range during a gas spike.

Pricing Setup Paths

Pricing can be set at startup, in a config file, or updated at runtime without restarting the gateway.
Pass flags directly in the startup command:
livepeer \
  -gateway \
  -maxPricePerUnit 5000000 \
  -pixelsPerUnit 1 \
  -maxPricePerCapability /etc/livepeer/maxPrices.json \
  -livePaymentInterval 5s \
  ...
Last modified on March 16, 2026