Deploy a Solana Indexer with OnFinality

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

Deploy a Solana Indexer with OnFinality

The Solana blockchain has quickly become one of the most popular platforms for high-performance decentralized applications (dApps). However, to fully harness its speed and scalability, developers need efficient ways to query and process blockchain data. That’s where a Solana Indexer comes in.

In this guide, we’ll show you how to deploy a Solana Indexer using OnFinality and SubQuery, ensuring your application can scale with reliable RPC nodes and flexible indexing solutions.

What is a Solana Indexer?

A Solana Indexer is a tool that extracts, organizes, and structures blockchain data so developers can query it easily. Instead of fetching raw data from the chain, which can be slow and resource-intensive, an indexer provides structured APIs tailored to your needs.

For Solana developers, this means:

  • Faster access to on-chain data
  • Reduced RPC overhead
  • Easier integration with front-end applications

Why SubQuery + OnFinality for Solana?

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 infrastructure — Scales with your app's usage
  • Reliable RPC Node Access – OnFinality provides globally distributed RPC endpoints, ensuring low-latency and high-uptime connections.

Together, OnFinality and SubQuery provide a powerful solution to quickly deploy, manage, and scale your Solana Indexer.

🛠 Prerequisites

Before getting started, ensure you have:

  • A working SubQuery project for the Solana network
  • A GitHub repository or IPFS-hosted version of your project - today we'll be using QmSNoAN8QT7VaRXz7AacEMPMN2U8b5d3ve5zXRM1RM7gS2
  • An account on OnFinality’s Indexing Service

Step 1: 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. 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 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.

Deploy a Solana SubQuery Indexer on OnFinality. Step 1: Press Create Your SubQuery SDK Project

Step 2: Create Your Solana 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.
Deploy a Solana SubQuery Indexer on OnFinality. Step 2: Enter name and description

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.

Deploy a Solana SubQuery Indexer on OnFinality. Step 2.1: Press Deploy your first 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 3: 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:

Deploy a Solana SubQuery Indexer on OnFinality. Step 3.1: enter 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
Deploy a Solana SubQuery Indexer on OnFinality. Step 3.2: Set version
  • 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.
Deploy a Solana SubQuery Indexer on OnFinality. Step 3.3: Configure RPC and query settings

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

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

Get an unlimited SubQuery API Endpoint from OnFinality

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

Step 4: 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.

Deploy a Solana SubQuery Indexer on OnFinality. Step 4: Watch your project sync & test some queries

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.

SubQuery's Query Playground for Solana

Additional Resources

For deeper insights, check out these resources:

Common Questions about Solana Indexing

Who needs to index Solana data?

Any team building dApps, NFT marketplaces, or DeFi platforms on Solana needs to index Solana data to deliver fast, reliable, and structured blockchain queries.

How do I build my first Solana Indexer?

The easiest way to build a Solana Indexer is with SubQuery. Initialize a project, configure your Solana data, and deploy to OnFinality Indexing. Follow the official SubQuery docs for details.

What is the best data indexer for Solana?

The best data indexer for Solana is SubQuery, which provides flexible, high-performance indexing and deploys seamlessly with OnFinality’s scalable infrastructure.

How do I choose the right Solana RPC provider?

When selecting a Solana RPC provider, look for speed, scalability, and reliability. OnFinality provides high-performance RPC nodes with worldwide coverage for developers building on Solana.

Final Thoughts

Deploying a Solana Indexer doesn’t have to be difficult. With OnFinality’s managed infrastructure and the flexibility of SubQuery, you can focus on building your dApp instead of worrying about indexing complexities.

Whether you’re a startup or enterprise, using a scalable RPC node provider and a reliable SubQuery Indexer ensures your application remains fast, resilient, and ready for growth.


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

Let’s build the future of Web3 on Solana 🚀