Operator Filter Registry
- Name: Operator Filter Registry
- URL: https://github.com/ProjectOpenSea/operator-filter-registry
- Category: NFT royalty-enforcement middleware / transfer-operator policy registry / marketplace access-control layer
- Tags: ethereum-ecosystem
- Summary: Operator Filter Registry was OpenSea’s shared blacklist machine. Collections could subscribe to a canonical operator and code-hash denylist, then enforce those checks inside token approval and transfer paths. Useful historical mechanism page, but the approach lost.
- What it does:
- Lets token contracts or their owners register with a shared registry and filter specific operator addresses or contract code hashes
- Supports subscription and copy semantics so one registrant can inherit another registrant’s blocklist instead of curating its own from scratch
- Ships
OperatorFiltererhelper contracts that token contracts can inherit to gatetransferFrom/safeTransferFromand approval methods through the registry - Ships
DefaultOperatorFilterer, which automatically subscribes a collection to OpenSea’s canonical subscription list - Ships revokable and updatable variants so owners can later bypass or re-point the registry logic
- Is explicitly marked deprecated in the official repository, and OpenSea later said it was sunsetting the filter because unilateral marketplace blocking failed to gain ecosystem-wide buy-in
- Key claims:
- The core mechanism is a shared operator and code-hash blacklist with subscription semantics, not just generic
royalties dramabaggage. - The subscription model is the important design move.
registerAndSubscribe()andDefaultOperatorFiltererlet many collections inherit one publisher’s policy set, so the real question becomes who controls the canonical list and how easy it is to exit. - The
OperatorFiltererhelpers make the enforcement point explicit: the token contract itself is expected to reject transfers or approvals when an operator is disallowed. This is transfer-admission logic, not a passive metadata hint. RevokableOperatorFiltereris revealing because it bakes in the expectation that collections may later bypass the registry. Even with onchain blocking logic, marketplace policy still sat above the system.- The project matters now mostly as a failed baseline. OpenSea deprecated it because ecosystem-wide buy-in never materialized, and later creator-fee tooling shifted toward transfer validators and signed authorizer zones instead.
- The core mechanism is a shared operator and code-hash blacklist with subscription semantics, not just generic
- Whitepaper: No canonical whitepaper or litepaper surfaced in this pass. The strongest primary materials were the official repository, the Solidity source files for the registry and helper contracts, the deprecation note, and OpenSea’s later fee-enforcement docs collected in
../../whitepapers/operator-filter-registry-primary-sources-2026-05-11.md. - Sources:
- https://github.com/ProjectOpenSea/operator-filter-registry
- https://raw.githubusercontent.com/ProjectOpenSea/operator-filter-registry/master/README.md
- https://raw.githubusercontent.com/ProjectOpenSea/operator-filter-registry/master/src/OperatorFilterRegistry.sol
- https://raw.githubusercontent.com/ProjectOpenSea/operator-filter-registry/master/src/OperatorFilterer.sol
- https://raw.githubusercontent.com/ProjectOpenSea/operator-filter-registry/master/src/DefaultOperatorFilterer.sol
- https://raw.githubusercontent.com/ProjectOpenSea/operator-filter-registry/master/src/RevokableOperatorFilterer.sol
- https://opensea.io/blog/articles/opensea-digest-aug-18-2023
- https://docs.opensea.io/docs/creator-fee-enforcement
Internal linkages
-
Keep the mechanism set short: royalty-registry, creator-token-transfer-validator, and seaport-signedzone.
-
Last reviewed: 2026-06-08 UTC