Skip to main content

Free tool

Anchor IDL inspector and PDA finder

Paste an Anchor IDL or fetch one by program id. See every instruction, account layout and byte size, then derive program addresses from the seeds.

No sign-up. Runs in your browser. Last reviewed by the Builderz team.

Pasted IDLs stay in your browser. The only thing sent to our server is the program id, when you press Fetch from chain.

How it works

Paste or fetch

Paste the IDL JSON, or enter a program id and the server reads the IDL account that Anchor publishes on mainnet. Programs that never published an IDL return nothing.

Both IDL formats

Anchor before 0.30 uses isMut and isSigner. Anchor 0.30 and later uses writable, signer, discriminators and PDA seeds. Both are read into one view.

How sizes are computed

Fixed types use their Borsh size: bool and u8 are 1 byte, u64 is 8, u128 is 16, pubkey is 32. An array is n times its item, an option is 1 plus its item. An enum is counted as 1 plus its largest variant, which is the space to reserve, not the length of a smaller variant. Strings and vecs are variable. Anchor accounts add an 8 byte discriminator.

How PDAs are derived

The address is the SHA-256 of the seeds, a bump byte, the program id and the text ProgramDerivedAddress. The bump starts at 255 and goes down until the hash is not a point on the ed25519 curve. The curve check runs in your browser.

Privacy

Pasted IDLs are parsed in your browser and never uploaded. Fetch from chain sends only the program id to our server, which asks a Solana RPC node for the IDL account.

Questions about this tool

Why does Fetch from chain fail?

Most often the program never published an IDL, or it is not an Anchor program. Some teams also close the IDL account. Paste the IDL from the build output instead.

Why does a size say variable?

The account holds a string, a vec, or an option of one of those. Its length changes with the data, so one number would be wrong. The tool shows the minimum instead.

Is the derived address the one the program uses?

Yes, when the seeds match the program byte for byte and the program id is right. Check number widths and text encoding first, since those are the usual mismatch.

Does it support Shank or Codama IDLs?

Not yet. This tool reads Anchor IDLs only. A Shank or Codama file will be rejected with a message.

Beyond the tool

Need this done for your program? Start with production build.

$10K-$40K. Book an intro call, or send a brief with what the tool showed you. We reply within one business day.

  • Acceptance in writing

    Criteria agreed before build starts

  • Proposal in 48h

    After a qualified scoping call

  • Change control

    Scope, exclusions, and owners named