Group randomization
Allocate your animals to balanced groups, with a seed to repeat the same draw.
Nothing you enter is sent: your data stays on your device.
- Your animalsPaste or import the list
- Groups and methodNumber, names, balancing
- AllocationGroups and export
Step 1 of 3
Your animals
Your list stays in this browser tab, even after a reload. Close the tab and it is gone; a new tab starts empty. A shared link carries the groups, the method and the seed only, never the animals.
One animal per line. Sex and weight are optional for a simple draw; the order of the lines is part of the draw.
A CSV with the same three columns, chosen or dropped here. A first line may name the columns (id, sex, weight), in English or French. The file is read in your browser, never sent.
2,000 animals and 1 MB at most.
How it’s calculated
Method
Everything happens in your browser: the list, the import, the draw and the exports. Nothing is sent. Your list stays in this tab and is gone when you close it.
The draw uses sfc32, a published pseudo-random generator (Chris Doty-Humphrey, PractRand), seeded from your seed by the xmur3 hash; the first 12 outputs are discarded. Integer arithmetic only, never Math.random: the same seed gives the same numbers in every browser. “New draw” takes a six-digit seed from the browser’s cryptographic source.
The animals are dealt in blocks of as many animals as there are groups: each full block gives one animal to each group, in an order drawn at random, so group sizes differ by one at most. A simple draw shuffles the whole list first. By sex, males and females are dealt separately. By weight, the animals are sorted by weight and each block holds neighbours in weight. By sex and weight, both.
The order of the list is part of the draw: the same list in another order gives another allocation (with the weight methods, the order only breaks ties between equal weights). Keep the list with the seed.
The blind list gives each animal a neutral code (R-01, R-02…) handed out in an order drawn from a secret salt, never from the seed, so the seed in your methods says nothing about the codes. The key that links each code to its group is a separate file, with the seed and the salt.
Limits
- Depending on the method, the tool balances group sizes, the sexes or body weight; it runs no statistical test and does not say how many animals a study needs.
- A simple draw suits large groups; for small groups, balance by weight or by sex.
- The same seed gives the same allocation only with the same list, in the same order.
- The blind list gives codes; blinding itself (who knows what, and when) is up to your team.
- Your protocol and your animal care committee come first: the method they approved is the one to use.
Sources
- ARRIVE 2.0, item 4a (randomisation): state whether randomisation was used and the method that generated the sequence; the method sentence answers it.
- NC3Rs, Experimental Design Assistant: support for randomisation, blinding and sample size when planning an animal study.
- bryc, PRNGs.md (sfc32, xmur3): the JavaScript code of the generator and of the seed hash the tool uses, as published.
These tools help you plan. They replace neither your protocol nor your animal care committee.