← Biology

Ecology & evolution Population genetics

Genetic drift simulator (Wright–Fisher)

Simulate genetic drift with the Wright–Fisher model. From N, initial p0, generations, and replicates, visualize trajectories, final distributions, and fixation/loss rates.

All calculations run in your browser. Your data is not sent.

Other languages 日本語 | English | 简体中文 | Español | Português (Brasil) | Bahasa Indonesia | Français | हिन्दी | العربية

How to use (3 steps)

  1. Select an example or enter N, p0, generations, and replicates.
  2. If needed, add selection/mutation/migration in Advanced (you can keep defaults).
  3. Click Run to see trajectories, distributions, and fixation/loss rates.

Inputs (N, p0, replicates)

2N = —(gene copies)

Compute load:

Advanced (selection, mutation, migration)

You can ignore details at first. Start with neutral drift to understand the dynamics.

Results (fixation/loss & distribution)

An example runs automatically. Change inputs and click Run to try other settings.

Visualization (trajectories & distributions)

Export (copy / CSV / JSON / share URL)

How it’s calculated

This is a model. Real populations are more complex, so use results as a guide.

When to use Wright-Fisher

Use this page when your question has moved beyond a single cross and into population change over time. It helps you see how drift alone, or drift combined with selection, mutation, or migration, can reshape allele frequencies across many generations.

Suggested order

  1. Start with neutral drift so you can see the fixation and loss pattern without extra assumptions.
  2. Add selection, mutation, or migration one at a time.
  3. Compare both the fixation rate and the final-frequency distribution instead of relying on one metric.
  4. Use the model as a guide, not as a literal forecast for a real population.

How this genetics page differs from the others

FAQ

Is fixation probability always p0?

For neutral drift, p0 is a common guide, but selection changes it. You can check simulation results here as well.

Is N the number of individuals?

Here, N is the number of diploid individuals, and allele copies are treated as 2N (displayed).

How many replicates do I need?

It depends, but more replicates stabilize fixation/loss rates. Reduce replicates if it is heavy.

Are advanced options required?

No. Start with neutral drift to understand the dynamics.

Are my inputs sent anywhere?

All calculations run in your browser. Your data is not sent.

How to read the output

Fixation and loss rates tell you how often trajectories end at the boundaries within your time window. The distribution plots show whether most runs still cluster around the starting frequency or have already spread wide enough that drift dominates. If you need a one-generation expected ratio instead of a multi-generation simulation, use Punnett square or Mendelian chi-square instead.

Related tools

Comments (optional)

To reduce load, comments are fetched only when needed.