Bitcoin Address Format Inspector
Inspect public Bitcoin address strings locally, with exact checksum, network-marker, witness-program and scriptPubKey evidence.
Loading tool…
How to use Bitcoin Address Format Inspector
Review a copied public address or a short list without querying a blockchain service. Each source row stays visible beside its format result, decoded public payload and deterministic output-script template. A matching checksum is an encoding result, not evidence of an account, owner, balance or safe payment.
- Paste one public address per LF or CRLF-separated row. Keep the original case and characters so the report can identify format errors rather than guessing a replacement.
- Run the local inspection. Read the complete row status, checksum evidence, compatible network-marker set and exact scriptPubKey hex. Invalid rows have no usable output script.
- Download complete JSON or CSV. JSON retains the full original source; CSV protects formula-like invalid input for spreadsheet review. Verify any separate wallet or transaction workflow through its own trusted process.
Good to know
- This checks a selected address-encoding profile only. It does not contact a node, explorer, wallet, account or service; check balances or ownership; verify a recipient or public-key point; validate spending rules; create keys; send funds; or certify payment safety. Private keys, seeds, extended keys and bitcoin: payment URIs are unsupported inputs.
- Use at most 100 physical source rows, 256 UTF-16 units per row, 26,000 units and 104,000 UTF-8 bytes jointly. A single final LF or CRLF is a record separator. Interior empty rows are explicit invalid records. Bare CR, spaces, tabs, Unicode lookalikes, prefixes and other unsupported characters are not repaired. Malformed Unicode or batch size/count violations refuse the entire run.
- Supported Base58Check public addresses decode to exactly 25 bytes: a one-byte version, a 20-byte public hash payload and a four-byte double-SHA256 checksum. Supported versions are 00 and 05 for mainnet markers, and 6f and c4 for the shared test-network markers. Leading zero symbols are preserved in the byte decoding. A checksum-correct unknown version is unsupported, not treated as a Bitcoin account.
- Native witness addresses have at most 90 printable ASCII characters, an unmixed case, HRP bc, tb or bcrt, witness version 0–16 and a strict 2–40-byte program. Version 0 additionally requires 20 or 32 bytes and Bech32; versions 1–16 require Bech32m. Excess or nonzero padding is rejected. Original uppercase source remains uppercase in the evidence; no corrected address is emitted.
- Network constants are pinned to Bitcoin Core v30.0. The tb marker is shared by testnet3, testnet4 and signet. Base58 test versions are also shared with regtest; bcrt is its native witness marker. An address alone cannot distinguish those shared networks or prove which chain it came from. Other currencies or private networks can reuse encodings.
- The output names selected script templates: P2PKH, P2SH, P2WPKH, P2WSH and the 32-byte version-1 P2TR pattern. Other accepted witness versions or lengths retain exact version/program/script bytes with spending semantics explicitly unassessed. This does not test whether an output can be spent or recognize every policy-specific use.
- Invalid and unsupported rows are retained in their original order, including duplicates. A valid format row contains only the exact derived public output script. Unknown-version or unknown-HRP rows do not receive a usable Bitcoin script. Both full JSON and CSV are checked against 512,000 UTF-8 bytes and UTF-16 units before either download returns; no partial report is emitted.
- JSON includes the original addresses and source hash. CSV quotes every field, prefixes every invalid or unsupported source address with an apostrophe and additionally protects direct formula prefixes in other fields. Import hex and address columns as text to retain leading zeros; spreadsheet behavior is not certified. JSON retains original values. No input is uploaded or saved by this tool. Address lists can reveal associations, so deliberately review the exported evidence before sharing it.
Common questions
Does a format match mean I can safely pay this address?
No. It establishes only the declared encoding and output-script pattern. It does not verify the recipient, ownership, balance, intended network, key validity or a transaction. A mistyped string can also happen to have a valid checksum.
Why does a test address show several networks?
Those networks intentionally share address encodings. A tb witness address cannot distinguish testnet3, testnet4 and signet, and legacy test versions also overlap regtest. The report preserves that ambiguity instead of guessing one.
Why does an invalid row remain in the downloaded list?
Inspection needs complete evidence of what was supplied. The tool neither drops difficult rows nor silently repairs their case, whitespace or checksum. Review the reason and obtain the intended public address from its original source.
Keep going with related tools
All developer →Base-N Encoding Workbench
Encode UTF-8 as Base16, Base32, or Base64url, or decode canonical data strictly.
DeveloperSHA Hash Generator
Calculate SHA-256, SHA-384, or SHA-512 digests of exact UTF-8 text using Web Crypto.
DeveloperCRC32 and Adler32 Calculator
Calculate standard CRC-32/IEEE and Adler-32 checksums of UTF-8 text in one pass.