Free tool, no sign-up

Random name picker

Paste the participants one per line or enter a number range, choose how many winners and alternates you need, and press “Draw”. The pick uses your browser's cryptographic random generator with no bias, and the result can be copied or downloaded with its date and time.

Contest and prize draw guide

Run a draw

Only in your browser; nothing is sent

Participants

A name, username or phone number; copy an Excel column straight in. Blank lines are ignored.

0 participants

In case a winner doesn't reply

Paste a list or press “Sample list”, then “Draw”.

How the random draw works

  1. Paste the list

    One participant per line: a name, an Instagram username or a phone number. Copy an Excel column straight in; blank lines are ignored and Persian and Latin digits count as the same. To draw among ticket numbers, choose the number range instead.

  2. Remove duplicates

    With “Remove duplicates” everyone gets one chance. Names typed with Arabic or Persian keyboard letters, “@sara” and “sara”, and phone numbers written as 0912… or +98912… count as the same entry, and the first one is kept.

  3. Set winners and alternates

    Alternates replace, in order, any winner who doesn't reply or doesn't meet the rules. Everyone comes out of the same draw; the first alternate is simply the next person drawn, not a separate draw.

  4. Record and announce the result

    The date, time and draw number appear next to the result. Copy the text or download a text file; for a public announcement, mask the middle of phone numbers with asterisks.

Example: 250 people commented on a giveaway post and 31 comments are duplicates. After removing duplicates, 219 people stay in the draw. If you want 3 winners and 2 alternates, each person's chance of winning is 3 in 219, about 1.4 percent, whether their name is at the top of the list or at the bottom.

How fair is this draw?

The random numbers come from crypto.getRandomValues, the generator browsers use for cryptography, not Math.random, which is made for games and animation. Two technical details complete the fairness:

Picking k people out of n

  • u < floor(2^32 / n) * n ? u mod n : retryA number that would skew the remainder towards the top of the list is thrown away
  • for i in 0..k-1: j = i + randomBelow(n - i); swap(i, j)The Fisher–Yates algorithm: every possible order of winners has exactly the same probability

The result is fixed the moment you click. The names that spin on screen for a moment are only a display and play no part in the pick; if you have reduced motion in your device settings, the result is shown straight away.

A fair algorithm is not the same as transparency for others: participants can't see that you drew only once. If the result matters to others, stream the draw live or record your screen; the draw number and time appear on the result and go up with every new draw.

For a draw that anyone can recompute for themselves, Porsino's Online contest builder runs the draw in two stages: before the draw, the ticket list is frozen and a fingerprint of the random seed is published; after the draw, the seed itself is revealed. So the result cannot be changed once it has been seen.

Drawing among Instagram comments, form respondents or numbers

  • Instagram and Telegram: this tool doesn't connect to your account and doesn't read comments automatically. Copy the usernames and paste one per line; a leading “@” is ignored when spotting duplicates.
  • Respondents to a Porsino form: export the responses to Excel from the “Responses” tab and paste the name or phone column here. To make sure each person takes part only once in the first place, see One response per person — for example “One response per code” or mobile number verification by SMS.
  • Ticket or card numbers: choose “Number range”, for example 1 to 500. The range is never built in memory, so even millions of numbers are drawn instantly.
  • Classes and meetings: paste the student list once and draw again to pick the next person. If nobody should be picked twice, delete the previous winner from the list.

The tool takes up to 100,000 lines in the list and 1,000 winners and alternates combined.

Frequently asked questions

Is this online draw really random?

Yes. Every pick comes from crypto.getRandomValues, the browser's cryptographic random generator, and is turned into a winner with unbiased sampling and the Fisher–Yates algorithm, so a name's place in the list has no effect on its chance.

Can the result be fixed in advance or tampered with?

Not inside the tool: there is no setting that favours anyone. But anyone can draw several times and announce only one result. That is why the draw number and time are shown on the result, and why a live draw is best.

What is an alternate in a prize draw?

The people drawn right after the winners in the same draw. If a winner doesn't reply by the deadline or doesn't meet the contest rules, the prize goes to the first alternate, then the second, without repeating the draw.

Is the participant list sent to a server?

No. The list, the numbers and the result stay in your browser only; Porsino neither sees nor stores them.

Can it draw among Instagram comments?

This tool doesn't connect to Instagram. Copy the commenters' usernames and paste them into the list; duplicates, with or without “@”, are set aside.

How many people can be in the draw?

Up to 100,000 lines in the list, or a number range of up to billions of numbers. Winners and alternates combined: up to 1,000.

Online exam guides

All posts

Run your contest online

In Porsino's contest builder, participants sign up with one link and get a question every day; at the end, the draw among them uses a committed seed that anyone can verify.