Lodestar
GRT
0

Publishing a subgraph without Studio, on one page

Studio's query URL is being retired chain by chain, and Base is next. We built a page that takes a Studio URL, or the handoff from graph publish, and walks a subgraph onto the network: publish, signal, watch indexers sync, query. It was tested by publishing five real subgraphs, which found two bugs of our own. Here is how to use it, and the three things Studio still does that it does not.

Subgraph Studio's query URL is being retired, one chain at a time. BNB Smart Chain and Polygon went on 8 October and Studio stopped serving them on 31 October. The Foundation has said Base is next, with no public date. This week somebody asked in #indexers whether there could be a video for developers on chains that can no longer use Studio, because publishing is "way different than in past". This is the video, and the page it is a video of.


A 40-second walkthrough of lodestar-dashboard.com/move

One page instead of four

Moving a subgraph off Studio has always been possible. It has also been spread across four places: the CLI or Studio to publish, Explorer to find what you published, a curation screen to signal on it, and then nowhere in particular to find out whether an indexer has picked it up.

lodestar-dashboard.com/move puts those on one page and reads each step from the chain. There is no account and nothing to remember. The address of the page is the state, so you can close the tab, come back next week, and it will tell you where your subgraph stands.

It is free, and it does not hold your API key or your wallet.

Three ways in

From Studio. Paste the query URL your app uses today, the one that begins https://api.studio.thegraph.com/query/. The page asks that endpoint which deployment it serves and starts from there. Studio already put your files on IPFS, so there is nothing to rebuild or redeploy.

From the terminal. If you publish with the CLI, add one flag:

graph publish --webapp-url https://www.lodestar-dashboard.com/move

graph publish builds, uploads to IPFS and opens a web page to finish the job. That flag changes which page. We ran it with graph-cli 0.98.1 on 11 November 2026 and it opened /move with the deployment filled in. --subgraph-id and --api-key are carried across as well, and the key is taken out of the address bar as soon as the page has read it.

From an agent. There is a skill on the page that an AI coding agent can install. Without a key it builds the subgraph and hands you the link to sign. With a key file you give it, it publishes, signals, waits for indexers and prints the query URL. It talks to the same API the page does.

The four steps

  1. Publish. One signature to sign in, which costs nothing, then one transaction on Arbitrum One. Ours cost 0.0000057 ETH. You set the name, description, image, website, source link and categories that Explorer shows. If it is a new version of a subgraph you already own, say so; the page checks the owner on chain first and tells you in words if the connected wallet is the wrong one.
  2. Signal. Indexers choose what to sync largely by curation signal. The page shows what is signalled and lets you add to it. 500 GRT is the floor that counts towards an indexer's rewards eligibility.
  3. Wait for indexers. Every allocated indexer is listed with how far behind the chain head it is. If one hits an indexing error, the error is shown with the block it happened at, and whether it is deterministic. Deterministic means your mapping has a bug and every indexer will hit it; otherwise it is probably that indexer's node.
  4. Query, then switch. A GraphiQL playground runs against the gateway with your key, and switches to your old Studio endpoint with one click, so you can compare answers before you change anything. Then the page gives you the one line to change in your app.

Where Studio still wins

Studio and graph publish /move
Index and query a subgraph before publishing it Yes, on the chains it still serves No
API keys and billing Yes No. The page links to Studio for the key
Publish to Arbitrum Sepolia Yes, --protocol-network arbitrum-sepolia No. Arbitrum One only
Publish, signal, indexer sync and errors on one page No Yes
Start from the Studio URL, with nothing to redeploy n/a Yes
Usable by an agent with no browser No Yes

The first row is the one that matters, and it is the reason for the question in Discord. Studio ran an indexer for you, so you could find a broken mapping before anybody else saw it. On a chain Studio no longer serves, that is gone, and we have not replaced it. On /move you publish first and find out on the network, which is why step three shows indexing errors so prominently. It is a worse way to discover a bug and we would rather say so than imply otherwise.

The second row is not ours to fix. Keys and billing belong to the gateway, which the Foundation operates.

What testing it for real turned up

We set a rule before starting: nothing would be called tested until a real wallet had paid for it. A throwaway wallet holding about 0.002 ETH published five subgraphs on Arbitrum One on 11 November 2026, edited the details of three, signalled on two, and deprecated all five afterwards. Signalling and withdrawing 20 GRT returned 19.8, which is the 1% curation tax doing what it says.

That found two bugs, both ours.

The subgraph ID was being read from the wrong contract. A new subgraph is an NFT, and the mint is logged by the SubgraphNFT contract, not by GNS. Our code looked on GNS and never found it. Thirteen browser tests with a pretend wallet had passed without noticing.

A retry could publish twice. Lodestar's own reader is a few minutes behind the chain. For those minutes the page believed a freshly published deployment was unpublished, and offered to publish it again. We know because we did it, and one of the five subgraphs is the duplicate. The page and the skill now ask GNS's own logs for the last month as well, and will only offer a publish when the chain and the reader both say there is none. Published a fresh deployment and retried within seconds: refused, no transaction sent.

Neither would have been found by reading the code harder.

What it does not do

  • It does not make an indexer pick your subgraph up. Signal makes it likelier. On a chain with few indexers and a small signal, you may wait.
  • The signal and indexer figures come from Lodestar's reader and can be a few minutes old. Whether the subgraph is published is read from the chain.
  • The chain schedule on the page says Base has no date, because none has been announced. We will add it when the Foundation publishes one.
  • It was built in a day. If something on it confuses you, that is a bug; tell us in Discord or at support@lodestar-dashboard.com.

Try it

Paste your Studio URL at lodestar-dashboard.com/move, or run:

graph publish --webapp-url https://www.lodestar-dashboard.com/move