QR Code Studio

Crypto QR Code Generator

Convert a cryptocurrency wallet address or supported payment URI into a customizable QR code.

Need the QR on an invoice? Use the Invoice Maker to create the invoice, add payment details and generate a QR for the saved invoice.
Static GS1 Digital Link
This generator keeps the GS1 Digital Link URI directly inside the QR code. Premium QR dynamic redirects are not used for GS1 Digital Link codes.
Waiting
Enter a GTIN with a valid GS1 check digit.
Default: https://id.gs1.org. A custom resolver must use HTTPS.
Optional Key Qualifiers
Premium QR Codes emits qualifiers in GS1 Digital Link path order: AI 22, AI 10, then AI 21.
GTIN validation is enforced again on the server. Valid GTIN-8, GTIN-12 and GTIN-13 values are normalized to the 14-digit representation used by this GS1 Digital Link implementation.

Advanced Customization
Standard
AI Art Blend
Neon Cyber
3D Isometric
Liquid Metal
Halftone
Standard Solid
✨ Liquid Glass Mode
Square
Dot Matrix
Rounded
💎 Diamond
✨ Starry
➕ Cross / Plus
♥ Heart
Square Eye
Circle Eye
Rounded
Square Pupil
Circle Pupil
Rounded
No Frame
Scan Me Box Banner
Designer
Colors & Gradients
Branding
Logo & Social Icon
Export
QR Code Size
512px
Enter the required fields to preview your QR code.
Generated QR code preview
PROFESSIONAL EXPORT STUDIO Production-ready QR export
PNG · 2048×2048 px · Current QR background
SVG remains vector. PNG, WEBP and JPG are rasterized in your browser. Transparent background is unavailable for JPG.
QR INTELLIGENCE
Waiting for QR code Generate a QR code to analyze scan readiness.
-- /100 EST. READINESS
QR STRUCTURE —
PAYLOAD —
CONTRAST —
LOGO SAFETY
STYLE RISK —
ERROR RESILIENCE —
MIN. PRINT SIZE —
DEPLOYMENT —
Your QR code has not been analyzed yet.
AUTOMATIC DESIGN SAFETY Logo & Design Preflight
SAFE
Safety score —
QR structure —
Logo footprint
Minimum contrast —
Generate a QR code to run design preflight.
Preflight guidance only. Real Scan Lab performs decoder verification.
PRINT-SIZE INTELLIGENCE Physical QR Print Guidance
Waiting for QR code
QR STRUCTURE —
INCLUDING QUIET ZONE —
RECOMMENDED MINIMUM —
PREFERRED PRINT SIZE —
MODULE SIZE AT PREFERRED —
QR DENSITY —
SUITABLE DEPLOYMENT —
Generate a QR code to calculate physical print guidance.
Physical-size recommendations are preflight guidance, not a universal scanner or print guarantee.
QR VERIFICATION CERTIFICATE Decoder Verification Record
Not verified
Run Real Scan Lab before generating a certificate.
DEPLOYMENT PROFILES Optimize for where your QR will be used
Digital / Screen

    Selecting a profile does not change the QR until you apply it.
    QR KNOWLEDGE STUDIO

    Crypto QR Code Generator

    Quick answer: A crypto QR code encodes a wallet address using a payment URI standard: BIP-21 for Bitcoin, EIP-681 for Ethereum. Scanning it opens a compatible wallet app with the address and optional amount pre-filled. The code is generated in your browser.

    Runs in your browser No data upload Custom design SVG, PNG, WEBP, JPG

    How to create a crypto QR code

    1. Enter the wallet address for the cryptocurrency you want to receive.
    2. Select the protocol: BIP-21 for Bitcoin or EIP-681 for Ethereum.
    3. Enter an amount if you want a fixed-value request, or leave it empty to let the sender enter the amount.
    4. Add a label or message to identify the payment in the sender's wallet.
    5. Scan the generated code with your own wallet app to confirm the address and amount are correct before downloading.
    6. Customise the pattern, eye style, colours and logo if needed, then export PNG, SVG, WEBP or JPG at up to 4096 px.

    The QR code is built in your browser as you type. Nothing you enter is sent to a server.

    What a crypto payment QR code is

    A crypto payment QR code is a standard QR code whose payload is a payment URI rather than a plain wallet address string. The QR symbol follows ISO/IEC 18004:2015, the international standard for QR Code symbology. The payment URI layer sits on top and is defined by protocol-specific standards: Bitcoin uses BIP-21 and Ethereum uses EIP-681.

    Encoding a plain address as a QR code is technically valid, but a URI-formatted code carries additional data such as the amount, a payment label, and a human-readable message. Wallet apps that support the standard parse all these fields automatically when the code is scanned, reducing the risk of a sender entering a wrong amount manually.

    The fundamental property of any crypto payment: once a transaction is confirmed on the network, it cannot be reversed, recalled, or disputed. This makes address accuracy the single most important detail on this page.

    Bitcoin and Ethereum payload syntax

    Bitcoin BIP-21

    BIP-21 is the Bitcoin payment URI standard. The full format is:

    bitcoin:<address>?amount=<decimal>&label=<label>&message=<message>
    FieldDescriptionRequired
    addressThe receiving wallet addressYes
    amountAmount in BTC as a decimal (e.g. 0.001, not satoshis)No
    labelName or description of the recipientNo
    messageHuman-readable note for the sender's wallet historyNo

    The amount field uses BTC as the unit. Writing 0.001 requests 0.001 BTC. Writing 1000000 would request one million BTC — a catastrophic typo that the standard cannot detect. Check the decimal point carefully.

    Bitcoin wallet addresses come in four format families:

    FormatPrefixStandardNotes
    Legacy1…P2PKHOldest format; universally supported
    P2SH3…Pay-to-ScriptUsed for multisig and early SegWit wrap
    SegWitbc1q…bech32, P2WPKHLower fees; native SegWit
    Taprootbc1p…bech32m, P2TRNewest; not yet supported by all wallets

    A Bitcoin address is specific to the Bitcoin network. Sending Bitcoin to the right-looking address on the wrong network (for example, a similarly formatted address on another chain) will result in permanent loss. Verify the address is valid for the specific chain before using it.

    Ethereum EIP-681

    EIP-681 is the Ethereum payment URI standard. The full format is:

    ethereum:<address>?value=<wei_amount>

    The value parameter is expressed in wei, not ETH. One ETH equals 10 to the power of 18 wei (10^18 wei). Entering a value in ETH without converting produces a request for a vanishingly small amount. Wallet apps that support EIP-681 usually display the converted ETH value at scan time, but verify this in your target wallet before printing.

    Ethereum addresses are 42 characters beginning with 0x. EIP-55 specifies a checksum encoding using mixed-case letters, but most wallets accept both all-lowercase and checksum-cased addresses.

    When to use a crypto payment QR code

    Donation pages and tip jars. Printing a BIP-21 code on a poster or embedding it in a presentation lets supporters send Bitcoin without copying a 34-character address by hand.

    Freelance invoicing. A QR code on a PDF invoice with the amount pre-filled reduces payment errors when clients use Bitcoin or Ethereum to settle work.

    Conference and event payments. A code at a merchandise table or event booth lets attendees pay from a mobile wallet without an internet connection to look up the address.

    Open-source project funding. A code in a repository README or documentation page lets users contribute without navigating away to a custodial donation platform.

    Physical merchandise. A code printed inside a box or on a card allows post-purchase tips or warranty registration without a user account.

    Design and print requirements

    Keep a four-module quiet zone on all sides. ISO/IEC 18004:2015 section 6.3.3 specifies this minimum margin, and scanners need it to locate the finder patterns.

    Print at 2 cm by 2 cm or larger for close-range scanning. Increase to 3 cm or more when the code will be read from a metre away.

    Maintain strong dark-on-light contrast. Inverted colours and low-contrast palettes are the most common cause of a code that looks correct but fails to scan.

    A wallet address is a long string, so a BIP-21 URI with an amount and label produces more data than a plain URL. More data means more modules and a denser symbol at a fixed print size. Print larger, not smaller, when adding optional fields.

    Use error correction level M or H for printed codes. Level M recovers approximately 15 percent of damaged codewords; level H recovers approximately 30 percent. Adding a logo to the centre requires level H so the obscured modules can be reconstructed. Error correction is the standard defined in ISO/IEC 18004.

    Troubleshooting: why your crypto QR code is not scanning

    The wallet app does not support BIP-21 or EIP-681. Some basic wallet apps only read a plain address string. If the URI-formatted code fails, try encoding the raw address without the scheme prefix and check the wallet documentation.

    The address contains a typo. A single wrong character produces a syntactically valid but unreachable address. Scan the generated code with your own wallet before printing and confirm the full address character by character.

    The amount is in the wrong unit. BIP-21 amounts are in BTC, not satoshis. EIP-681 amounts are in wei, not ETH. A mismatched unit will produce a code that scans but requests a wildly incorrect value.

    The code is too small or has insufficient contrast. Wallet camera apps sometimes have lower-quality optics than standard phone cameras. Print the code at 3 cm or larger and use strong dark-on-light contrast.

    The Taproot address is not supported by the scanning wallet. bc1p Taproot addresses are newer and not supported by all wallets. Verify that the receiving wallet supports the address format before printing.

    The address is for the wrong network. A Bitcoin address used in an Ethereum payment request, or vice versa, will produce a scan result that the wallet rejects or ignores. Confirm the address and the protocol match.

    Static crypto QR codes vs. dynamic redirect codes

    A crypto payment QR code is always static. The wallet address is encoded directly into the pattern.

    FeatureStatic crypto QR codeDynamic QR (redirect URL)
    What is encodedThe payment URI directlyA short URL that redirects
    Depends on a websiteNoYes — redirect service must stay live
    Editable after printingNoYes
    Works if the redirect goes downNot applicableNo
    Address exposureIn the code itselfRequires trust in the redirect host

    Using a dynamic redirect code to wrap a crypto address adds a third-party dependency: if the redirect service shuts down or changes the destination, funds could be misdirected or lost. Encode the payment URI directly. Static codes have no dependency on this or any other website after the code is printed.

    What this Crypto QR Code Generator gives you

    This browser-based tool encodes a cryptocurrency wallet address and supported payment-URI fields without sending or holding funds. It is designed for wallet address sharing, invoices, donation prompts and controlled over-the-counter payment instructions. The live preview updates while you edit, which makes it easier to catch a missing field or an unexpectedly dense symbol before download.

    You can adjust matrix patterns, finder-eye styles, foreground and background colours, gradients, frames, size and an optional logo. Exports are available as SVG, PNG, WEBP and JPG at 512, 1024, 2048 or 4096 pixels. SVG is the practical choice for professional print. A high-resolution PNG suits office documents and digital artwork.

    The static payload is constructed in your browser. The information entered into the generator does not need to be uploaded to create the QR image. Blockchain transfers are often irreversible. Verify the asset, network, wallet address and amount on the receiving device before authorising payment.

    Using this QR code in Bahrain and abroad

    Users in Bahrain must follow applicable Central Bank of Bahrain rules and their service provider’s terms; the generator does not provide financial advice or custody.

    Use British English spelling in customer-facing copy when that matches your organisation’s house style, and provide Arabic wording where the audience expects it. Keep the action after scanning obvious. A short line beside the symbol such as “Scan to save the contact” or “Scan to open the location” gives people confidence before they point their camera.

    Test the final design on current iPhone and Android devices. Test it again after printing on the actual paper, sticker, card, sign or packaging material. Bahrain’s bright outdoor light can expose glare and low-contrast problems that are less obvious on a computer screen. For international use, confirm country codes, currencies, time zones, regional app availability and payment-network compatibility.

    EDITOR’S CHECKLIST

    Before you publish

    • Correct QR payload type
    • Complete and verified data
    • Four-module quiet zone
    • Strong foreground contrast
    • Proportional square scaling
    • Logo kept within safe limits
    • SVG or high-resolution PNG
    • Final-size device scan test
    Return to generator ↑
    QR CODE FAQ

    Frequently asked questions

    Open a question to read a concise technical answer.

    01What is the BIP-21 format for a Bitcoin QR code?+

    BIP-21 is the Bitcoin payment URI standard. The format is bitcoin:<address>?amount=<BTC>&label=<name>&message=<note>. The amount field is in BTC as a decimal — 0.001 means one thousandth of a Bitcoin, not one thousand satoshis. Wallet apps that support BIP-21 parse the address, amount, and label from a single scan.

    02How do I encode an Ethereum payment QR code?+

    Ethereum payment QR codes follow EIP-681. The format is ethereum:<address>?value=<wei>. The value field is in wei, not ETH. One ETH equals 10^18 wei. Most modern Ethereum wallet apps display the converted ETH value at scan time, but confirm this in your specific wallet before printing at volume.

    03What Bitcoin address types work in a QR code?+

    All four Bitcoin address formats work in a BIP-21 QR code: Legacy (1…), P2SH (3…), SegWit bech32 (bc1q…), and Taproot bech32m (bc1p…). Not all wallet apps support Taproot addresses. If the receiving wallet does not support bc1p addresses, use a SegWit bc1q address instead.

    04Can I include the payment amount in a crypto QR code?+

    Yes. BIP-21 supports an amount parameter in BTC. EIP-681 supports a value parameter in wei. Omitting the amount lets the sender enter the value manually in their wallet. Including a fixed amount is useful for invoices and merchandise; omitting it is useful for tip jars and open-ended donations.

    05Is it safe to display a Bitcoin wallet address publicly in a QR code?+

    Sharing a receiving address is the normal way to accept crypto payments. A receiving address does not give anyone access to your funds — only the private key can authorise spending. Displaying a QR code of a receiving address is equivalent to publishing a bank account number for the purpose of receiving deposits: safe in practice, but verify you are displaying the correct address for the intended wallet.

    06What happens if I scan a crypto QR code with the wrong wallet app?+

    A wallet app that does not recognise the BIP-21 or EIP-681 URI scheme may display the raw text string instead of pre-filling a payment. Some apps may open a browser. In either case, no transaction is initiated without the user explicitly confirming a send. Verify the code with your intended target wallet before distributing it.

    07Why must I verify the address character by character?+

    A QR code encodes a string of characters that the human eye cannot read from the printed pattern. A single wrong character produces a valid-looking address that belongs to a different wallet. Blockchain transactions are irreversible: once confirmed, the network cannot return funds sent to a wrong address. Scan the generated code with your own wallet, confirm the full address on screen, and only then print at volume.

    08Can one QR code work for multiple cryptocurrencies?+

    No. BIP-21 is specific to Bitcoin and its direct forks. EIP-681 is specific to Ethereum. A Bitcoin address cannot receive Ethereum, and vice versa, regardless of how similar the address format appears. Create separate QR codes for each chain, and label each one clearly so the sender knows which asset to send.

    09Does a crypto QR code expire?+

    No. The wallet address is encoded directly in the pattern, so the code has no expiry date and requires no internet connection to display. The code will stop being useful only if you stop monitoring the wallet, change your preferred receiving address, or the wallet software becomes unsupported. Blockchain addresses themselves do not expire.

    10What is the difference between a plain address QR and a BIP-21 URI QR?+

    A plain address QR encodes only the wallet address string. A BIP-21 URI QR encodes the full payment request — address, amount, label, and message — in a structured format that wallet apps can parse automatically. The BIP-21 version is preferred for payment requests because it eliminates the step of the sender manually entering the amount.