Critical ratio scheduling ranks jobs by a single number: the time remaining until the due date divided by the work time remaining. A ratio below 1.0 means the job is behind and needs to run next; 1.0 is exactly on schedule; above 1.0 means it has slack. You sequence lowest ratio first.

Every dispatcher faces the same question at a machine: of the jobs waiting, which one runs next? Pick by due date alone and you may rush a job that has plenty of processing time to spare. Pick by shortest job and you may starve a long job that is already late. The critical ratio settles it by comparing, for each job, how much calendar time is left against how much shop time the job still needs. One number tells you which job is most time-starved. This post defines the ratio, shows the formula and how to read it, works a numeric example, and lays out how to sequence a queue by it.

What is critical ratio scheduling?

Critical ratio scheduling is a dynamic priority rule that sequences jobs by the ratio of time remaining to work remaining, sending the most urgent job, the one with the lowest ratio, to the machine first. It is dynamic because both parts of the ratio change as the clock advances and work gets done, so a job's priority is recalculated each time you look, not fixed when the order was released. That makes it responsive in a job shop where due dates and processing times vary widely from order to order.

The strength of the rule is that it weighs two things at once. Earliest-due-date sequencing looks only at the deadline and ignores how much work a job still needs. Shortest-processing-time sequencing looks only at the work and ignores the deadline. The critical ratio folds both into a single index, so a job that is due soon but nearly finished can correctly yield to a job that is due a little later but has a mountain of work left. It is one of the more balanced advanced planning and scheduling heuristics for exactly that reason.

The critical ratio formula and how to read itOne number: time left versus work lefttime remaining (due date − today)work remaining (processing time left)CR =CR < 1.0behind: run nextCR = 1.0on scheduleCR > 1.0ahead: has slack
Divide the calendar time left by the shop time still needed. Below 1.0 the job is losing the race; above 1.0 it is winning.

What is the critical ratio formula?

The critical ratio is the time remaining until the due date divided by the work time remaining to finish the job. Written out, it is (due date minus today's date) over the remaining processing or lead time. Both figures use the same time unit, usually days, so the result is a pure, unitless index you can compare across every job in the queue.

The reading is intuitive once you see it. If a job has 10 days until it is due and needs 10 days of work, its ratio is exactly 1.0 and it is precisely on schedule, no slack, no lateness. If it has 6 days left but still needs 10 days of work, the ratio is 0.6, it is behind, and it should jump the line. If it has 20 days left and needs only 10, the ratio is 2.0, it has comfortable slack, and it can wait. A negative or very small ratio means the job is already late or about to be, and no amount of resequencing fully recovers it, so the ratio is also an early warning, not just a sort key. Because the index is unitless, you can line up a two-day job and a two-month job on the same scale and see at a glance which is in more trouble, which is precisely what a flat list of due dates cannot show you.

JobDays until dueWork days remainingCritical ratioStatus & priority
A6100.60Behind, run 1st
B8100.80Behind, run 2nd
C10101.00On schedule, run 3rd
D20102.00Ahead, has slack, run last

How do you sequence a queue by critical ratio?

You compute the ratio for every waiting job, then run them lowest ratio first, recomputing as time passes. The lowest number is the most time-starved job, so it earns the machine; the highest number has slack and can wait. Because the ratio moves with the clock, you rerank whenever you dispatch, which keeps the priorities honest as some jobs finish and others creep toward their due dates.

  1. List the waiting jobs. Pull every order queued at the resource you are dispatching, with its due date and remaining work.
  2. Get time remaining. For each job, subtract today's date from the due date to get the calendar days left.
  3. Get work remaining. Total the processing and move time still needed to finish the job, in the same time unit.
  4. Divide to get the ratio. Time remaining over work remaining gives each job its critical ratio.
  5. Sort ascending and dispatch. Run the lowest ratio first; flag anything below 1.0 as at-risk and anything at or below zero as already late.
  6. Recompute after each move. Because both terms change with the clock and completed work, recalculate before the next dispatch decision so priorities stay current.

One caution: the ratio assumes your remaining-work estimates are honest. If routings overstate or understate processing time, the ranking tilts the same way, so a critical ratio is only as trustworthy as the work-content data feeding it. Keep the routings current and the rule earns its keep.

Resequencing a queue by lowest critical ratio firstLowest ratio wins the machinearrival orderA CR 0.60B CR 0.80C CR 1.00D CR 2.00↓ sort ascendingrun orderA CR 0.60B CR 0.80C CR 1.00D CR 2.00
Same four jobs, reordered. The behind-schedule job with the lowest ratio takes the machine; the job with slack waits its turn.

When should you use the critical ratio rule?

The critical ratio shines in a job shop where orders have genuinely different due dates and different amounts of work, because that is where a one-dimensional rule misleads. When every job takes about the same time, shortest-processing-time or earliest-due-date rules are simpler and nearly as good. When work content varies a lot, the critical ratio's balancing act pays off, and it doubles as a live at-risk report: any job under 1.0 is a job to worry about now, not at the due date.

It is not a cure-all. The ratio does not consider setup times, so it can shuffle you into costly changeovers if you follow it blindly; many shops soften it by grouping similar setups within a priority band. It also cannot create capacity, so if the machine is simply overloaded, the ratio only tells you which late job to disappoint least. Used with judgment, alongside a capacity check and a master production schedule it is a fast, sensible way to keep the most time-starved work moving.

What do the numbers say?

Context and definitions from standards bodies and primary sources:

The takeaway: with real backlogs of orders competing for the same machines, the order in which you run them is a lever, and the critical ratio is a cheap, defensible way to pull it.

Where critical ratio scheduling breaks in practice

The rule needs two live numbers per job, real time remaining and real work remaining, and in most plants both are guesses buried in different systems. The due date sits in the order system, the remaining work sits in a routing that may not reflect the rework, the missing part, or the machine that is actually down, and the operator on the floor knows things neither system does. Feed the ratio stale inputs and it confidently ranks jobs in the wrong order. Harmony is an AI-native layer that connects machines, software, and paperwork into one operational layer, with no rip-and-replace, so due dates, remaining work, and floor reality become one live record the sequence can trust. AI search returns cited answers across those records, so a dispatcher can ask which jobs are below a critical ratio of 1.0 or which are already late and get a real answer, and Harmony's digital workflows route each priority change and exception to the right person as the clock moves. It is not a scheduling engine; it keeps the ranking honest by keeping the inputs current, the same paper-to-digital move Harmony makes on the floor (see the CLS case study). That live picture is what makes critical ratio scheduling, its sibling constraint-based scheduling and the flow discipline of lean manufacturing hold up, while feeding truer numbers into production scheduling and throughput.