Roll a d20

A fair, instant virtual d20 — roll one or several 20-sided dice and get the total, right in your browser.

Roll a d20

Recent rolls

    🔒 Nothing you enter is sent anywhere or stored. All processing happens in your browser.

    How it works

    This is a free online d20 dice roller — a virtual 20-sided die you can roll as many times as you like, with no app to install and nothing to sign up for. Set how many d20 you want and press roll; each die shows its result and, when you roll several, you get the running total and average.

    The d20 is the twenty-sided die — the iconic D&D die for attack rolls and checks. Because tabletop games, classrooms, and probability demos all need a die that isn't always to hand, a virtual one is often the fastest option — and this one uses your browser's cryptographically-secure random generator, so every roll is genuinely fair and unpredictable.

    Everything runs on your device: no results are sent anywhere, and it works offline once the page has loaded.

    Examples

    Need a single result? Roll 1d20 for a number from 1 to 20.
    Playing a game that needs several? Set the count and roll multiple d20 at once.
    Teaching probability? Roll many d20 and watch the average settle near 10.5.

    Frequently asked questions

    Is this d20 roller truly random?
    Yes. It uses the browser's crypto.getRandomValues, a cryptographically-secure source, so each roll of the d20 is fair and independent — not a predictable pattern.
    Can I roll more than one d20 at a time?
    Yes — set the number of dice (up to 50) and every d20 is rolled at once, with the total and average shown.
    What is a d20 used for?
    The d20 is the twenty-sided die — the iconic D&D die for attack rolls and checks. It's a staple of tabletop role-playing and board games.
    Do I need an app or account?
    No. It's a free web page that works instantly in any browser, on phone or desktop, with no signup and no download.
    Does it work offline?
    Once the page has loaded it runs entirely in your browser, so it keeps working even without a connection.