Ensure you are on the official
ALWAYS VERIFY ADDRESSES ON-CHAIN
docs.livepeer.org/ site before using any address.
ALWAYS VERIFY ADDRESSES ON-CHAIN
Livepeer Protocol Source
Commit Pinned
Livepeer Contracts Arbiscan
On-chain Verified
Verifier Widget: Verify Contract Address
Use the tool below to query the blockchain directly from your browser.This widget queries the blockchain directly from your browser. No backend, no API keys, no sign-in. Every contract on this
page is verifiable.
Three public RPC endpoints are tried in sequence with automatic failover:
arb1.arbitrum.io,
publicnode.com,
drpc.org.If all are unreachable, the widget shows a
cast command you can run locally.
Queries only fire when you click a button, never on page load.
No data leaves your browser except to these public endpoints.Full list of public Arbitrum One RPCs: Chainlist.No-Trust On-chain Address Verification
Every Arbitrum One contract address can be independently verified by querying the Controller on-chain. No trust in documentation or widgets is required.Livepeer Contract Overview
Livepeer protocol contracts are deployed on Arbitrum One (active) and Ethereum Mainnet (legacy bridge and governance). Proxy addresses are stable across upgrades; target addresses change when a new implementation is deployed via governance.Core Contracts are the operational backbone of the protocol. Most use a proxy/target pattern where the proxy address is stable across governance upgrades.
- Controller
- BondingManager
- TicketBroker
- RoundsManager
- Minter
- ServiceRegistry
- AIServiceRegistry
The Livepeer Token (LPT) secures the protocol and enables governance and staking. Its main contract lives on the secure Ethereum L1 chain (genesis deployment) with a minter for Arbitrum L2 LPT.
- LivepeerToken
- BridgeMinter
Governance Contracts power protocol upgrades via LIPs and a democratic Governance Model, and fund the public good Treasury.
- Governor
- LivepeerGovernor
- Treasury
- BondingVotes
- MerkleSnapshot
- PollCreator
Bridge Contracts provide LP Token transfers and data synchronisation between the Ethereum Mainnet and Arbitrum One. L1Escrow holds all bridged LPT.
- L2LPTGateway
- L2LPTDataCache
- L1LPTGateway
- L1LPTDataCache
- L1Escrow
- L1Migrator
Ethereum Mainnet only. Historical infrastructure from the original 2018 launch, which has been migrated to Arbitrum.
- GenesisManager
- MerkleMine
- MultiMerkleMine
- Refunder
- SortedDoublyLL
Facilitated the migration of staked LPT from Ethereum Mainnet to Arbitrum One. No new migrations are possible. L2Migrator still accepts
claimStake from participants who have not yet claimed.- L2Migrator
- DelegatorPool
Active Livepeer Contract Addresses
ACTIVE Verified This table lists currently active standalone contract entrypoints together with the current implementation targets behind active upgradeable proxies. Active proxy addresses are listed separately below. Paused, migration-residual, and legacy-operational contracts are grouped into a separate section so the main searchable table stays active-only.See Workflow Verification Information
See Workflow Verification Information
This page is not populated from a hand-maintained address list. It reads the generated contracts registry Current limit: the live pipeline verifies the proof catalog aggressively, but it still resolves the known catalog rather than discovering arbitrary new contract families directly from repo diffs.
contractAddressesData.jsx, which is the canonical persisted contracts dataset in this repo.Trigger Workflow
update-contract-addresses.yml runs daily at 02:00 UTC (0 2 * * *), supports manual dispatch with dry_run, skip_verify, and use_test_branch, and can also be started by repository_dispatch events tied to livepeer/protocol, livepeer/arbitrum-lpt-bridge, livepeer/go-livepeer, and livepeer/governor-scripts.Load Source Inputs
fetch-contract-addresses.js starts the pipeline. The live implementation then loads:- the proof catalog from
operations/scripts/automations/content/data/contracts/spec.js - the governor manifest from
livepeer/governor-scripts/updates/addresses.js - the previous successful generated payload
- the previous branch-watch snapshot
- source and provenance data from these watched Livepeer repos:
- GitHub API reads used to fetch repo metadata, branches, commits, and file contents from those repos
Resolve Contract Families
The pipeline resolves the known contract families in its proof catalog from external sources:
- controller-managed contracts via Ethereum JSON-RPC
eth_call - deployment artefacts and repo-pinned source files from the watched Livepeer repos
- runtime consumer evidence where the proof catalog requires it
- governor manifest keys for families that are keyed from
addresses.js
Verify And Enrich Addresses
Before data is published, the current implementation verifies and enriches each row with external checks:
eth_callto recover controller state and proxy/controller relationshipseth_getLogson the Arbitrum controller to rebuild historicalSetContractInfoentries- Arbiscan or Etherscan proxy API
module=proxy&action=eth_getCodeto confirm bytecode exists at each published address - Blockscout
api/v2/addresses/{address}to enrich creator address, labels, verified-source state, and proxy hints - repo-pinned source and commit provenance from GitHub so contract code links resolve to a concrete upstream commit
Write Canonical Dataset
If validation passes, the workflow writes
snippets/data/contract-addresses/contractAddressesData.jsx. The JSON mirrors and page-facing companion outputs are derived from that generated dataset rather than authored separately.Fail Safely
If blocking validation fails, the workflow writes
_health-checks.json, anomaly artefacts, and an incident issue payload, uploads those artefacts, creates or updates a GitHub issue, and does not publish replacement contract data.Active Proxy Contract Addresses
Proxy addresses are stable upgrade entrypoints for active controller-managed contracts. They are primarily useful for deployment, governance upgrade, and implementation-tracking workflows rather than day-to-day contract usage.Published Non-Active Contracts
Paused Ethereum contracts, migration-residual contracts, and legacy-operational helper contracts remain published for verification and audit purposes, but they are not part of the active contract table above.Historical Contract Addresses
Historical implementations replaced through governance upgrades. These target contracts are superseded and listed for audit trail and version history only. Do not interact with deprecated targets directly.Contract Source Code
Livepeer Protocol
Core protocol Solidity contracts (BondingManager, TicketBroker, RoundsManager, Controller, governance)
Arbitrum LPT Bridge
Token bridge contracts connecting Ethereum Mainnet and Arbitrum One
Contracts Proof Inputs
Watched upstream repositories used for discovery, provenance resolution, and verification support
Livepeer on Arbiscan
All labelled Livepeer contracts on Arbitrum One block explorer