[PASSED] OP-PIP-50: Implement Pyth Update Fees on 8 Blockchains

Abstract

This proposal aims to implement a fee per price feed update on the following blockchains: Aurora, Avalanche, Conflux, Cronos, Meter, Ronin, Sei, and Shimmer. The proposed fees are designed to align with the economic activities and transaction costs specific to each network, ensuring a balance between revenue generation for the Pyth DAO and affordability for data consumers.

Rationale

Building upon the successful implementation of update fees on opBNB, which demonstrated positive revenue generation and user adoption , this proposal seeks to extend a similar fee structure to additional blockchains. The selection of these networks is based on criteria such as market competition, economic activity, and usage patterns, as detailed in the community discussion here.

Description

The implementation involves upgrading the existing Pyth oracle contracts on the specified blockchains to introduce a fee for each price feed update. The proposed fees are determined based on an analysis of current network usage, transaction costs, and the value provided by Pyth’s data feeds. The fee structure is as follows:

Blockchain Proposed Fee per Update Fee Denomination Approximate USD Equivalent
Aurora 0.000003 ETH $0.01
Avalanche 0.00025 AVAX $0.01
Conflux 0.1 CFX $0.015
Cronos 0.06 CRO $0.008
Meter 0.02 MTR $0.01
Ronin 0.001 RON $0.0016
Sei 0.01 SEI $0.0035
Shimmer 1 SMR $0.001

These fees are set to ensure that the cost to users remains reasonable while generating meaningful revenue for the Pyth DAO. The detailed analysis supporting these fee structures is available in the community proposal here.

Implementation Plan

  1. Contract Upgrade: Upgrade the Pyth oracle contracts on each specified blockchain to update the fees value as agreed upon above.

Proposal ID: Pyth Network

For verification of the proposal you must ensure that the fee’s (in wei) are matching the fees values specified above. You must also ensure that the New Fee Exponent is …

For instance, for Aurora, the new fee value must be 3 (three) and the new feed exponent must be 12 (twelve).

In the case of Shimmer, the new fee value must be 1 (one) and the new fee exponent must be 18 (eighteen).

For all chains, the new fee exponent values can be confirmed by referring to the below resources:

  • Aurora — follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to apply 0.000003 (last non-zero value is located on the 6th digit) as the fee you must move the exponent by 12 (18 - 12 = 6).
  • Avalanche — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.00025 (last non-zero value is located on the 5th digit) as the fee you must move the exponent by 13 (18 - 13 = 5).
  • Conflux — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.1 (last non-zero value is located on the 1st digit) as the fee you must move the exponent by 17 (18 - 17 = 1).
  • Cronos — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.06 (last non-zero value is located on the 2nd digit) as the fee you must move the exponent by 16 (18 - 16 = 2).
  • Meter — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.02 (last non-zero value is located on the 2nd digit) as the fee you must move the exponent by 16 (18 - 16 = 2).
  • Ronin — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.001 (last non-zero value is located on the 3rd digit) as the fee you must move the exponent by 15 (18 - 15 = 3).
  • Sei — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 0.01 (last non-zero value is located on the 2nd digit) as the fee you must move the exponent by 16 (18 - 16 = 2).
  • Shimmer — also follows a traditional EVM implementation meaning that tokens/contracts have 18 decimals available ; so to 1 (last non-zero value is a whole integer) as the fee you must move the exponent by 18 (18 - 18 = 0).
  1. Monitoring and Analysis: Continuously monitor the impact of the implemented fees on user activity and revenue generation.
  2. Community Feedback: Engage with the community to gather feedback and make necessary adjustments to the fee structure based on real-world usage and insights.
8 Likes

As a Pythian Council member, I support this proposal to introduce fees for price feed updates on these additional blockchains and will be signing in favor.

A structured fee model helps ensure Pyth Network remains sustainable while still providing developers with reliable, real-time price updates at a fair cost.

We’ve already seen this approach work well on opBNB, and expanding it to Aurora, Avalanche, Conflux, Cronos, Meter, Ronin, Sei, and Shimmer makes perfect sense.

The proposed fees are carefully set to match the economic conditions and transaction costs of each network, striking the right balance between keeping updates affordable and generating meaningful revenue for the DAO.

4 Likes