Random picker and groups

Pick items from a list or distribute them into groups using Web Crypto and explicit duplicate policies.

Local processing without uploads, automatic storage or automatic copying. One cancellable worker; a 5-second deadline, or 15 seconds for ZIP creation. Result text is limited to 512 KiB.

Up to 5,000 lines, 65,536 UTF-16 units and 128 KiB. CR and CRLF become LF. Spaces, duplicate values and empty lines follow the explicit options below.

Values are compared exactly after trim/empty options, without case folding or Unicode normalization. Without replacement, the count cannot exceed available items; repeated values may still occur when they have multiple tickets. Groups use each item once and differ in size by at most one. This is not a certified draw or gambling service.

How to use

Paste the list, choose picking or grouping and enter the count. Decide whether each line is a separate ticket or identical values are merged, then choose trim and empty-item options. Generate and review; copying and downloading are optional.

Try an example

The lines A, A, B contain three tickets under the line policy and two items under the unique-value policy. Picking all three tickets without replacement returns two As and one B in random order. Five items split into two groups have sizes 3 and 2; no fixed order is expected.

Support & limits

CR and CRLF become LF, and the line limit is checked before dropping empty entries. Comparison is exact after optional trimming, without case folding or Unicode normalization. “Without replacement” prevents reusing the same ticket but does not remove repeated values. Groups shuffle the list then distribute round-robin; every item occurs once and sizes differ by at most one. Group downloads contain JSON; pick items are joined with LF without appending an extra separator, and the file can end in LF when the last item is empty. No custom seed or intentional replay is provided; this is not a certified draw or gambling service.

Common questions

Why did a value repeat with replacement disabled?

The value may appear on several lines, with each line treated as a separate ticket. Choose “One item per exact value” to remove those duplicates before drawing. If empty items are retained, a selected empty string can be a valid result.

Related tools