Deploy an Ethereum Indexer with OnFinality

Learn how to deploy an Ethereum Indexer with OnFinality and SubQuery for faster data access. Scale your dApp today with reliable RPC nodes.

Deploy an Ethereum Indexer with OnFinality

The Ethereum blockchain is one of the most widely adopted platforms for building decentralized applications (dApps) and smart contracts. Known for its flexibility and security, Ethereum has become the foundation of Web3, powering DeFi, NFTs, DAOs, and countless other innovations. However, to truly unlock its potential, developers need efficient ways to query and process the vast amount of data stored on-chain. That’s where an Ethereum Indexer comes in.

In this guide, we’ll walk you through how to deploy an Ethereum Indexer using OnFinality and SubQuery, so your applications can scale with enterprise-grade RPC endpoints and powerful indexing solutions.

What is an Ethereum Indexer?

An Ethereum Indexer is a tool that extracts, organizes, and structures blockchain data into a form developers can query easily. Instead of relying on raw chain data, which is slow and computationally heavy, an indexer provides structured APIs designed to fit your application’s needs.

For Ethereum developers, this means:

  • Faster access to transaction and smart contract data
  • Lower reliance on direct RPC calls
  • Easier integration with dApps, dashboards, and analytics tools

Why SubQuery + OnFinality for Ethereum?

SubQuery is a powerful open-source framework for building custom blockchain indexers. With SubQuery, you can extract, transform, and serve blockchain data to your dApp using a flexible GraphQL API.

By publishing your SubQuery project on OnFinality, you benefit from:

  • One-click deployment — No need to run your own infrastructure
  • Auto-scaling resources — Scales with your app's usage
  • Global CDN — Fast data delivery anywhere in the world
  • Built-in support for Ethereum RPC —https://eth.api.onfinality.io/public

How to Deploy an Ethereum Indexer

🛠 Prerequisites

Before getting started, ensure you have:

  • A working SubQuery project for the Ethereum network
  • A GitHub repository or IPFS-hosted version of your project
  • An account on OnFinality’s Indexing Service

Step 1: Prepare and Host Your SubQuery Project

OnFinality requires your project to be publicly accessible—either via GitHub or IPFS.

Today, we will be using a demo Ethereum project deployment with IPFS CID:

QmP9KL18VBzpsAdCrjh2RPspyqy3eu3C7VJJw47XgsnpG3

Step 2: Log In to OnFinality’s Indexing Service

 To create your first project, head to OnFinality Indexing Service. You'll need to authenticate with your GitHub account to login.

On first login, you will be asked to authorise OnFinality’s Indexing Service. We only need your email address to identify your account, and we don't use any other data from your GitHub account for any other reasons. In this step, you can also request or grant access to your GitHub Organisation account so you can post SubQuery projects under your GitHub Organisation instead of your personal account.

OnFinality Indexer Service dashboard

OnFinality Indexing Service is where you manage all your hosted projects uploaded to the OnFinality Indexing Service platform. You can create, delete, and even upgrade projects all from this application.

OnFinality Indexer Service - Create Project

Step 3: Create Your Ethereum Indexing Project

There are two methods to create a project in the OnFinality Indexing Service: you can use the UI or directly via the subql cli tool

Using the UI

Start by clicking on "Create Project". You'll be taken to the new project form. Start by selecting what project type you would like to deploy (SubQuery), and then follow the steps and enter the following (you can change this in the future):

  • Project Name: Name your project.
  • Description: Provide a description of your project.
  • Database: Premium customers can access dedicated databases to host production SubQuery projects from. If this interests you, you can contact sales@onfinality.io to have this setting enabled.
  • Visible in Explorer: If selected, this will show the project from the public explorer to share with the community.
OnFinality Indexer Service - Ethereum project name

Create your project and you'll see it on your OnFinality’s Indexing Project's list. Next, we just need to deploy the first version of it.

OnFinality Indexer Service - Deploy first ethereum version

Using the CLI

You can also use @subql/cli to create a new deployment of your project to our Indexing Service. Please follow the guide on how to create a new project on the OnFinality’s Indexing Service in the CLI documentation.

Step 4: Deploy your First Version

While creating a project will setup the display details of the project, you must deploy a version of it before it becomes operational. Deploying a version triggers an indexing operation to start, and sets up the required query service to start accepting GraphQL requests. You can also deploy new versions to existing projects here.

With your new project, you'll see a "Deploy your first version" button. Click this, and fill in the required information about the deployment:

OnFinality Indexer Service - Set ethereum project CID
  • CID: Provide your IPFS deployment CID from Step 1
  • Manifest: The details are obtained from the contents of the provided CID, used to confirm that you have the correct deployment
OnFinality Indexer Service - Deploy ethereum query service
  • Query Version: This is the version of SubQuery's query service that you want to run this project on. We suggest using the latest version
  • Advanced Settings: There are numerous advanced settings which are explained via the in built help feature.
OnFinality Indexer Service - Set ethereum network endpoint

Network Endpoints: You can use OnFinality’s limited public Ethereum endpoint to get started:https://eth.api.onfinality.io/public

For best results, sign up at https://app.onfinality.io/signup to retrieve an endpoint with higher rate limits

OnFinality - Get Ethereum Private RPC endpoint

Once submitted, OnFinality will begin indexing your project. Depending on Ethereum's chain state and your query configuration, this may take a few minutes to fully sync.

Step 5: Connect to your Project

Once your deployment has successfully completed and our nodes have indexed your data from the chain, you'll be able to connect to your project via the displayed GraphQL Query endpoint.

OnFinality Indexer Service - Connect to your etheruem project

Alternatively, you can click on the three dots next to the title of your project, and view it on SubQuery Explorer. There you can use the in browser playground to get started.

OnFinality Indexer Service - Ethereum project explorer

Additional Resources

Getting started with Ethereum indexing is easier when you have the right tools and trusted infrastructure. For deeper insights, check out these resources:

Common Questions about Ethereum Indexing

Who needs to index Ethereum data?

Any team building dApps, NFT platforms, or DeFi protocols on Ethereum needs to index blockchain data to deliver fast, reliable, and structured queries for their users.

How do I build my first Ethereum Indexer?

The easiest way to build an Ethereum Indexer is with SubQuery. Start a project, define your Ethereum data sources, and deploy to OnFinality Indexing. Follow the official SubQuery docs for step-by-step guidance.

What is the best data indexer for Ethereum?

The best data indexer for Ethereum is SubQuery, offering flexible, high-performance indexing that integrates seamlessly with OnFinality’s enterprise-grade infrastructure.

How do I choose the right Ethereum RPC provider?

When selecting an Ethereum RPC provider, prioritize reliability, scalability, and global performance. OnFinality delivers high-performance Ethereum RPC nodes with worldwide coverage to support developers and enterprises alike.

Final Thoughts

Deploying an Ethereum Indexer doesn’t have to be complex. With OnFinality’s managed infrastructure and the power of SubQuery, you can focus on innovating your dApp instead of dealing with indexing challenges.Whether you’re building a new DeFi protocol or scaling an enterprise-grade Web3 platform, using a trusted RPC provider and a robust SubQuery Indexer ensures your application is fast, resilient, and built to grow.

Need help? Contact support@onfinality.io or join our Telegram community.

Let’s build the future of Web3 on Ethereum 🚀