EES
  • Ethereum Execution Service
  • Concepts
    • Jobs and registry
    • Executors and coordination
    • Applications
    • Execution modules
    • Fee modules
    • Execution fees
    • Sponsored jobs
  • Coordination
    • Staking
    • Designation
    • Slashing
  • Execution modules
    • RegularTimeInterval
  • Fee modules
    • LinearAuction
    • PeggedLinearAuction
  • Deployments
  • Guides
    • Create an application
    • Sponsor jobs
    • Build an executor bot
  • EES DAO
  • SDK
    • Types
    • Query jobs
    • Execute batch
    • Create job
    • Delete job
    • Sponsor job
    • Revoke sponsorship
    • Listen for created jobs
  • EES Subgraph
  • Technical reference
    • API
      • Core
        • JobRegistry
        • Coordinator
      • Periphery
        • Querier
Powered by GitBook
On this page
  1. Concepts

Execution fees

PreviousFee modulesNextSponsored jobs

Last updated 7 months ago

Fees are necessary to incentivise executors to execute jobs. We can largely view the fee as doing three things:

  1. Compensating the executor paying gas fee to perform the on-chain transaction.

  2. Incentivizing the executor beyond gas fee compensation, making it profitable to execute a job. Being an executor typically requires some kind of hardware and time invested and it should be worth the trouble economically.

  3. Funding protocol development. Part of the fee goes to the protocol treasury, funding building of tools, integrations and protocol R&D.

The total fee is calculated by the of the job and can be paid in any ERC-20 token. Getting the fee right is important as the job might not get executed if it is too low and the user risks overpaying if it is set too high. Fee modules contain mechanisms assisting in this.

Note: The execution fee is always paid by the sponsor. If no sponsor was set duing creation of a job, then the creator (msg.sender) will be set as sponsor.

Warning: Even though the fee can be paid in any ERC-20 token, it is the executors who decide if the job is worth executing. They might do that by looking at the current price of the fee token. To ensure reliable execution it is adviced to choose an established token with multiple price feeds.

fee module