Generators by brand
Visa Mastercard American Express Discover JCB Diners Club UnionPay Maestro
Visa
Visa numbers start with 4, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
Mastercard
Mastercard numbers start with 51, 52, 53, 54, 55, 2221–2720, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
American Express
American Express numbers start with 34, 37, have 15 digits and a 4-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
Discover
Discover numbers start with 6011, 644–649, 65, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
JCB
JCB numbers start with 3528–3589, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
Diners Club
Diners Club numbers start with 300–305, 36, 38, have 14 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
UnionPay
UnionPay numbers start with 62, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
Maestro
Maestro numbers start with 5018, 5020, 5038, 6304, 6759, have 16 digits and a 3-digit security code. The last digit is a Luhn check digit, which lets forms catch typos before sending the card to the payment provider.
FAQ
Are generated card numbers real?
No. They follow the brand's prefix and length rules and pass the Luhn checksum, so they look valid to front-end validation, but they are random and not linked to any bank account. Any real authorization will fail.
What can I use them for?
Testing checkout form validation, input masks and brand detection, filling QA databases and fixtures, UI screenshots and demos, and load-testing tools that only need well-formed numbers.
Can I use them in Stripe or Adyen test mode?
Usually no — sandboxes only accept their own published test numbers. Use our test cards list for gateway testing.
Why is there no custom BIN option?
Generating numbers from a specific bank's BIN is the technique used in card-testing (BIN) attacks against real cardholders, so we only generate from the brand-level ranges.