# Mirror Nodes

Mirror nodes are read-only copies of the state of the network meant to be used for most of your data queries.

While it is possible to run your own mirror node, you will quickly find the cost of deploying and maintaining this infrastructure is quite high and generally ill-advised.

This is where the public mirror node and other mirror node providers come in.

It is **highly** **recommended** you use a paid mirror node provider when you push your app live.

Also note that there is a 5-15 second delay on most data posted to a mirror node - it is recommended you use paid mainnet queries for any mission-critical data.

### The Public Mirror Node

The public mirror node is a free-to-use mirror node service provided by Hedera **meant for development.** It is globally rate limited at 100 requests per second, but provides a bare minimum environment for playing around.

<mark style="color:red;">Again just to stress -</mark> <mark style="color:red;"></mark><mark style="color:red;">**DO NOT EVER USE THE PUBLIC MIRROR NODE IN PRODUCTION.**</mark>

You can find information about the public mirror node [here](https://docs.hedera.com/hedera/sdks-and-apis/rest-api).

One cool thing the public mirror node provides is a [Swagger based sandbox](https://mainnet-public.mirrornode.hedera.com/api/v1/docs/#/) you can explore the different endpoints with.

### Mirror Node Providers

#### [Hgraph.io](https://www.hgraph.io/)&#x20;

Hraph.io is a graphQL based mirror node service that allows for super optimized and complex queries, it also has a rest API available.

\
[Arkhia](https://www.arkhia.io/)\
This is the most widely used mirror node in the ecosystem, offering great stability and customer support.

\
[Validation Cloud](https://www.validationcloud.io/)\
A newcomer to Hedera, Validation Cloud offers a very generous free tier which may suit small dapps well.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.hashpack.app/hashpack-documentation/general-guidelines/mirror-nodes.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
