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
- 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).
- Monitoring and Analysis: Continuously monitor the impact of the implemented fees on user activity and revenue generation.
- Community Feedback: Engage with the community to gather feedback and make necessary adjustments to the fee structure based on real-world usage and insights.