Indexer Procurement FAQs

What is the scope of the indexing service?

Deployment and operation of all indexer components, described in the v4 Indexer Deep Dive blog post.

Do we need to write the software for indexing or use an open source software?

The Indexer operator is expected to operate the open source software components of the dYdX v4 Indexer. More details on the plans for open sourcing can be found in this blogpost. While developing new features for the Indexer is out of this scope, for the sake of empowering the Indexer operator to resolve potential operational issues faster, it is imperial for the Indexer operator’s team to have the capacity to read and understand the open source software of the v4 Indexer.

Are there any specific technical requirements for the indexing service?

For the optimal operation of the Indexer, the following setups has been built


  • ECS - Fargate
  • RDS - Postgres Database
  • EC2
  • Lambda
  • ElastiCache Redis
  • EC2 ELB - Loadbalancer
  • Cloudwatch - Logs
  • Secret Manager

Additional services

  • Terraform Cloud
  • Bugsnag
  • Datadog
  • Pagerduty

For more details on all Indexer components, check the v4 Indexer Deep Dive blog post.

What performance benchmarks are expected from the indexing service?

The Indexer is a key component for the operation of dYdX v4 exchange, therefore it is crucial that very high uptime and very rapid and robust upgrade procedures are established. The benchmarks will be following (and not limited to) these measurements:

  1. 99% uptime or ~7 hrs/month of unexpected downtime, not including maintenance
  2. On-call member on duty 24/7 that can respond to alerts
  3. 95% of the pagerduty calls responded within 10 minutes and 100% of pagerduty calls responded within 30 minutes
  4. Team available for indexer deployment multiple times a week
  5. Indexer not more than 30 seconds behind the blockchain at any given time

Is there any preference for the technology stack to be used?

The high level summary of the technology stack: multi-service infrastructure setup, managed with Terraform, on AWS, using Kafka, Redis and PostgreSQL, providing high-availability REST and WebSocket APIs. For a more detailed overview, check the Qualification Survey [add link].

What is the expected duration of the contract?

The expected duration is 12 months. This is subject to change based on performance overseen by the provisions in the contract.

How will the selection process be conducted?

The selection will follow 4 major phases:

  1. Open pre-qualification form to evaluate the experience and operational readiness for service providers interested in running the indexer service
  2. Request for proposal from shortlisted vendors based on the pre-qualification form results to evaluate the detailed plan and commercials of delivery
  3. Proposal review, presentation/demonstration and due diligence
  4. Contract negotiation, final selection and contract execution

The process will be guided by the following principles

  • Ethical and professional behavior
  • Transparency and accountability
  • Fairness and equity
  • Relevant experience and expertise
  • Value for money
  • Risk management

How should pricing and cost structure be presented in the proposal?

The cost breakdown should consist of both fixed and variable costs.

Fixed costs - should encompass essential components such as human resources and software subscriptions, with a predetermined fixed amount to be paid per month that the service provider will need to submit in their proposal.

Variable costs - should encompass services like cloud services and data logging tools, where the invoices will be paid based on the actual usage or quantity consumed per month.

Is there a deadline for proposal submission?

The exact schedule is subject to modification depending on the potential for the dYdX v4 mainnet going live and the official launch date.

However, we expect the RFP submissions to be completed by the beginning of September.

How to get in touch with the procurement team for any further questions?

You can email the procurement team using