Interactive simulation

How would a draft actually work?

Not politically — mechanically. Every step of a draft — find, notify, examine, adjudicate, deliver — has a queue, a capacity and a failure mode. Move the controls and watch where it breaks.

Loading the scenario grid…

Scenario
Inductees the Department of Defense asks for each month, held for six months.
Days of warning before M-day — how much of the surge organisation is standing when the order arrives.
Military entrance processing station examination throughput, as a share of the ledger value.
Selection mode
Special-skills selection is the January 2026 exercise scenario. The registrant database has no occupation field, which is why that lottery has nothing to run on.
The address bar tracks your scenario, so the link you copy reopens exactly this configuration.
Cumulative inductions against cumulative demand
Inductions delivered (mean of replications) 5th–95th percentile Inductions requested
Table view of this chart
DayInducted (mean) p5–p95Requested
Daily induction rate against daily demand
Inductions per day Requested per day
Where this line flattens is the capacity ceiling. Demand above the flat line is simply not met — it does not queue up and arrive later inside the horizon. This rate is derived by differencing the cumulative curve, so each point is an average over the sampling window rather than a single day's count.
Which constraint was binding, and how often
Share of stage-days on which each resource was the binding constraint. The interesting behaviour is migration: relieve the stage that binds first and the bottleneck moves somewhere else, usually upstream into printing and mailing notices or tracing bad addresses.

There is no draft. Registration is not conscription, no induction authority exists, and the Department of Defense has repeatedly told Congress it has no plans requiring conscription. This page models a hypothetical so that the hypothetical can be argued about with numbers instead of vibes. Where you would personally stand →

The two clocks

"How long until the first inductee" has two answers and they are not the same question. Pipeline latency is how long an individual takes to move from a call to a body at a reception station — that is what the simulation above measures. Organisation standup is how long the agency needs to become capable of doing it at all, and that is arithmetic over the agency's own published and released figures, not a simulation output. Blending them is the single most common error in reporting on this subject.

Full derivation, decomposition and document citations: 193 vs 285 vs 660 — the two clocks →

What each control actually did to the model

Nothing here is a black box. Each control is a named transform on a named scenario field or parameter id, and the assumptions inside the transform are written out.

Two consequences of those transforms that are worth knowing before you read a difference as a finding. First, a notice-deliverability fraction cannot exceed 1, so the 1991 and 2003–2020 compliance regimes produce identical deliverability — they differ only in the size of the usable registrant pool, which does not bind until demand is very large. Second, the examination-capacity control has a deliberate discontinuity at its top stop: 800% is the Department of Defense's own 18,000-a-day planning assumption, not a measured capacity. Comparing the 100% and 800% positions is the single most informative thing you can do on this page — and the same comparison, run against the government's published timetable rather than a slider, moves the 100,000-inductee milestone by 81 days. That result, quantified →

How much of this is actually sourced

Read this before you quote any number above

How the numbers on this page were produced

  1. site/tools/precompute.py generates one scenario YAML per grid cell into a site-local temporary directory.
  2. For each cell it shells out to the simulation engine itself — python -m mobsim.run <scenario> — which runs a daily-timestep discrete-event model of all six mobilisation functions over many Monte Carlo replications.
  3. It reads the engine's own CSV outputs back, checks that every cell ran against the same parameter ledger by comparing SHA-256 hashes, and writes site/data/grid.json.
  4. This page loads that file and draws it. The sliders select a precomputed cell; they never interpolate between cells and never invent a value.

Cohort members are conserved exactly: the engine reports the maximum number of people created or destroyed across every replication of every cell, and it is . Anything else would be a bug in the model, not a finding about the world.