Sooner or later, most technical divers plan the same dive in two apps, or on two computers, and get two different schedules. It is tempting to think one of them is wrong. More often, both are correct for the settings they were given.
Take a dive to 45 m (150 ft) for 25 minutes on trimix 21/35, with EAN50 and oxygen for decompression. With settings that two careful divers could easily choose, one plan has the diver back at the surface after 49 minutes and the other after 61 (Figure 1).
Diver A GF 50/80 · last stop 3 m · descent counted inside the 25 min · stops timed to the second
Diver B GF 50/70 · last stop 6 m · 1 min per gas switch · whole-minute stops
Differences like this come from four places: the decompression model, the way the model has been programmed, the conventions each program assumes, and the settings the diver enters. This article looks at each in turn, with real numbers, and ends with a short list of things to compare before a dive.
What a deco planner calculates
Most technical dive computers and planners use Bühlmann's ZHL-16C model, so it helps to know what the model does. It divides the body into 16 imaginary compartments that take up and release gas at different speeds. The fastest fills halfway in a few minutes; the slowest takes more than ten hours to do the same. Throughout the dive, the model tracks how much nitrogen and helium each compartment holds.
On the way up, the surrounding pressure drops, and the gas pressure in a compartment can end up higher than the pressure of the water around the diver. The model allows this only up to a limit called the M-value. Past that limit, the model considers the risk of decompression sickness too high. The M-value is lower near the surface, so as the diver ascends, the limit comes down towards the gas the compartments are carrying.
From this, the planner works out a ceiling: the shallowest depth the diver could go to right now without any compartment passing its limit. On a no-stop dive there is no ceiling below the surface. On a decompression dive the ceiling starts below the surface and rises as the compartments release gas. Decompression stops turn that rising ceiling into depths a diver can hold, usually 3 m (10 ft) apart.
Gradient factors add a safety margin. The space between the surrounding pressure and the M-value is the compartment's allowance, and a gradient factor sets how much of it the diver is willing to use. At 100%, a compartment may go right up to the M-value. At 50%, it may go only halfway. Gradient factors come as a pair, such as 50/80. The first number, GF low, applies at the first stop. The second, GF high, applies at the surface. In between, the allowance rises gradually, so with 50/80 the compartments may use 50% of it at the first stop, a little more at each stop above that, and 80% on reaching the surface. Unpacking Gradient Factors explains the two numbers in more detail, and What Is Decompression? covers the basics.
1. Different models
Bühlmann is not the only decompression model. VPM-B and RGBM are bubble models. Instead of only tracking dissolved gas, they aim to keep small bubbles from growing, and they usually place more of the decompression time at deeper stops than Bühlmann does. A Bühlmann plan and a VPM-B plan for the same dive are not expected to match. As DAN notes in its guidance on dive computers, "there is no universal standard."[4 ] Which model is closer to reality is a separate question, discussed in InDEPTH's What is the Best Algorithm? They're all Wrong![3 ]
There are also versions within Bühlmann. He published three sets of limits, ZHL-16A, B and C. They use the same compartment speeds, and the C set, intended for dive computers, is more conservative than B in the middle compartments. Gradient factors came later: Erik Baker introduced them in 1998.[1 ] So the first thing to check when comparing plans is that both use the same model, which for most technical divers means ZHL-16C with gradient factors.
2. Different programs, same model
If two planners both use ZHL-16C with GF 50/80, you might expect identical schedules. They usually come close, but they do not always match to the minute. Bühlmann published the model: the compartment speeds, their limits and the equations for how gas moves in and out. A working planner needs more than that. Whoever writes one has to settle many details that the model leaves open, and different programmers settle them differently.
The four decisions below are only examples, chosen because each one shows up in real schedules. For each, it is worth stopping to ask what you would choose if you were writing the planner.
Where GF low applies
GF low applies at the first stop. But which depth counts as the first stop? Suppose that when the diver leaves the bottom, the ceiling is at 7.2 m. Stops are 3 m apart, so the first stop the diver actually makes is at 9 m. The planner can apply GF low at 9 m, where the diver stops, or at 7.2 m, where the ceiling really is.
The choice affects every stop above it, because the allowance rises from GF low at that starting depth to GF high at the surface. With GF 50/80, starting at 9 m lets the compartments use 60% of their allowance at the 6 m stop. Starting at 7.2 m allows only 55%, which means slightly longer shallow stops (Figure 2).
Starts at 9 m GF low applied at the first stop
Starts at 7.2 m GF low applied at the exact ceiling (Dive Kit)
Erik Baker's original method starts at the first stop.[1 ] Dive Kit starts at the exact depth of the ceiling. Both are reasonable, but starting at the stop has a side effect. As the bottom time grows, the first stop moves down in 3 m steps, and each step loosens the allowance at every shallower stop. One extra minute on the bottom can then give a shorter ascent than the minute before. Starting at the exact ceiling avoids this, because the starting point moves smoothly as the compartments take up gas.[5 ]
Off-gassing during the ascent
The compartments start releasing gas as soon as the diver leaves the bottom, and on a deep dive the swim to the first stop can take several minutes. A planner can send the diver to the stop the ceiling called for when they left the bottom. Or it can keep recalculating the compartments during the ascent, as a dive computer does, and stop the diver only on reaching the ceiling, which may have moved up by then.
The difference shows most on deep helium dives. Figure 3 shows an 80 m dive on trimix 15/55 at GF 30/70 from Dive Kit's own comparison with MultiDeco.[5 ] MultiDeco's code is not public, so the comparison shows results, not methods. MultiDeco's schedule starts at 48 m, with a short stop every 3 m. Dive Kit recalculates all 16 compartments every second on the way up. On this dive, helium leaves the fastest compartments so quickly that the ceiling rises faster than the diver climbs, and Dive Kit's first stop is at 39 m. From 27 m up the two schedules nearly match. The time to surface is 81 minutes in MultiDeco and 85 in Dive Kit, which includes three one-minute gas switches.
MultiDeco first stop 48 m · time to surface 81 min
Dive Kit first stop 39 m · time to surface 85 min
Rounding stop times
A dive computer ends a stop as soon as the ceiling allows. A printed plan needs times a diver can follow from a slate, so many planners round each stop up to a whole minute. In a ScubaBoard thread about matching a Shearwater Perdix to MultiDeco, a Shearwater representative pointed out that the computer does not round short stops up: "the 10 second stop clears in 10 seconds."[10 ] On the dive in this article, timing stops to the second instead of rounding them saves about a minute.
Rounding raises another question. May the diver leave a rounded stop early if the swim to the next stop would clear the ceiling on the way? An early version of Dive Kit allowed this. It saved a minute and passed the simple tests, but on a deep dive it brought the diver up too early, so it was removed. In Dive Kit a rounded stop is now never shorter than the exact one.[5 ]
Planners also record the swim between stops differently. At 9 m/min, rising 3 m takes 20 seconds. MultiDeco's help says that "the displayed stop times include the time required for transit between stops."[6 ] Dive Kit counts only the time spent at the stop, and the swim shows up in the run time. Over six stops that is close to two minutes counted in different places, so two tables can disagree stop by stop and still agree on the total. MultiDeco's help also gives advice that suits any planner: "Follow the run times."
Applying the ppO₂ limit
Most divers switch to oxygen at 6 m, with a maximum ppO₂ of 1.6. By the textbook rule of 1 bar at the surface plus 1 bar for every 10 m, oxygen at 6 m is exactly 1.6. Using a typical seawater density and standard sea-level air pressure, it is 1.62. A planner that treats 1.6 as a strict limit would not allow the switch to oxygen at 6 m, where most divers make it. Dive Kit lets a gas go up to 0.03 bar over its limit so that the switch stays at 6 m.[5 ] Other planners handle this in their own ways, and the choice decides where gas switches appear in the table.
These are only four examples. A planner also has to decide whether to calculate the gas taken up during the descent or treat the diver as arriving at the bottom instantly, whether to subtract the water vapour in the lungs from each breath as Bühlmann did, and whether GF low affects no-stop time. On a multi-level dive, it has to decide which ceiling GF low starts from, and on a rebreather dive, which cylinder the diver breathes after bailing out. Each answer is reasonable, and each moves the schedule a little. Robert Helling, one of the Subsurface developers, has written about several of the same questions.[2 ]
Dive Kit's own comparison ran 33 test dives in Dive Kit and MultiDeco, with the settings matched as closely as the two programs allow. On 29 of them the time to surface was within three minutes, and the comparison explains the other four.[5 ] Programming differences are real, but they are usually a matter of minutes.
3. Different conventions
Planners also rest on basic assumptions that are easy to overlook. One is how depth converts to pressure. Seawater, fresh water and EN13319, a European standard offered as a setting on many dive computers, each give a slightly different pressure at the same depth. Dive Kit, for example, uses 9.95 m of seawater per bar, 10.2 m of fresh water and exactly 10 m for EN13319, starting from a sea-level pressure of 1.013 bar. A planner that uses the textbook rule of 10 m per bar and exactly 1 bar at the surface gives slightly different pressures again. The dive in this article takes 55 minutes in seawater and 54 in fresh water.
Another is what the time entered for a level means. In MultiDeco, the first level's time is a run time: entering 25 minutes means the diver leaves the bottom when the dive clock reads 25, so the descent is part of those 25 minutes. In Dive Kit, by default, 25 minutes means 25 minutes at that depth, with the descent added on top. The Include travel in level time setting makes the first level work the MultiDeco way. At 20 m/min the descent to 45 m takes 2¼ minutes, so the same entry can mean 25 or 22¾ minutes on the bottom. On this dive that changes the run time by 5 minutes, or by 10 with a slow 10 m/min descent.
A dive computer's clock always starts at the surface. The clearest way to brief a dive is therefore as a run time: the number the computer will show when the team leaves the bottom.
The oxygen clock has conventions too. Dive Kit counts CNS from the ppO₂ of the gas at the diver's depth. Other methods first subtract the water vapour in the lungs, which gives a slightly lower ppO₂. Near 1.6 bar the allowed exposure time falls steeply as ppO₂ rises, so a small difference in ppO₂ makes a large difference in CNS. On one deep trimix dive in the comparison, Dive Kit shows 69% and MultiDeco 54%.[5 ]
4. Different settings
The last source of difference is the one divers control directly, and it produces the largest gaps. The table takes the plan from the start of this article and changes one setting at a time. The reference plan is 45 m for 25 minutes at depth on 21/35, with EAN50 and oxygen, GF 50/80, a 3 m last stop, 20 m/min down, 9 m/min up (3 m/min from the last stop), whole-minute stops and seawater. Its run time is 55 minutes.
| Change from the reference | Run time | Difference |
|---|---|---|
| Last stop at 6 m | 56 min | +1 |
| 25 minutes counted from the surface (descent included) | 50 min | −5 |
| Ascent at 10 m/min instead of 9 | 54 min | −1 |
| Stops timed to the second, not whole minutes | 54 min | −1 |
| GF 30/80 instead of 50/80 | 56 min | +1 |
| GF 50/70 instead of 50/80 | 58 min | +3 |
| Deco gases limited to ppO₂ 1.5, so EAN50 from 18 m and oxygen from 3 m | 57 min | +2 |
| One minute allowed for each gas switch | 56 min | +1 |
Most of these changes move the run time by a minute or two, but they add up. In Figure 1, Diver A counted the descent inside the 25 minutes and timed stops to the second. Diver B used GF 50/70, a 6 m last stop and a one-minute pause at each gas switch. Together, those choices put 12 minutes between the two plans.
Last stop depth
TDI's Jon Kieren wrote: "In a perfect world, we would always conduct our last stop at 3 metres/10 feet."[7 ] In rough water, many teams hold the last stop at 6 m (20 ft) instead. On this dive, with oxygen as the last gas, the 6 m stop added only one minute, and that minute is the slower final ascent from 6 m rather than 3 m. Pure oxygen contains no nitrogen or helium, so the compartments release gas just as fast at 6 m as at 3 m. What changes is the oxygen exposure: the CNS figure rose from 38% to 61%.
On any other gas, a deeper last stop is slower. The compartments release gas at a speed that depends on the difference between what they hold and what the diver breathes in. At 6 m the diver breathes that gas at a higher pressure than at 3 m, so the difference is smaller and the stop takes longer. The effect is largest on a lost-gas plan.
| Last gas breathed | 3 m last stop | 6 m last stop | Difference |
|---|---|---|---|
| Oxygen | 55 min | 56 min | +1 (CNS 38% to 61%) |
| EAN50 | 61 min | 63 min | +2 |
| Back gas only (lost deco gas) | 99 min | 128 min | +29 |
Shearwater computers use this setting differently. On a Shearwater, the last stop setting changes the prediction, not the tracking; the manual says it "does not affect real time decompression calculations."[8 ] With the last stop set to 3 m, the time to surface assumes the diver will finish at 3 m. Once the computer calls for the 3 m stop, a diver who stays at 6 m is still tracked correctly, but on any gas other than oxygen the stop time and time to surface will count down more slowly than the clock. In the words of the Perdix 2 manual, the predicted time to surface "may be shorter than the actual TTS since off-gassing may occur slower than the algorithm expects." A planner, on the other hand, prints a different schedule for each setting. A team should agree on one last stop depth and plan its lost-gas schedules for the depth it will actually hold.
Gradient factors
The two gradient factors affect the schedule in different ways. Erik Baker wrote that GF low "determines the depth of the first stop."[1 ] On this dive, GF 30/80 puts the first stop at 21 m, 50/80 at 18 m and 70/80 at 15 m, while the run time barely changes (56, 55 and 54 minutes). GF high controls how long the shallow stops last, so it has more effect on the total: 50/70 takes 58 minutes and 50/85 takes 53.
Defaults can change too. In a November 2025 firmware update, Shearwater changed the Perdix 2's default Tec mode gradient factors from 30/70 to 50/70.[9 ] Two divers who have never changed their settings are not necessarily using the same values. Unpacking Gradient Factors looks at what the evidence says about choosing them.[14 ]
Ascent rate
Shearwater's computers assume an ascent rate of 10 m/min (33 ft/min) in their calculations,[8 ] and the reference plan here uses 9 m/min. On this dive the difference is about a minute. A much slower ascent has a larger effect. At 3 m/min, the plan no longer needs the 18 m and 15 m stops, because the diver releases enough gas on the way up. Yet the whole dive takes 9 minutes longer. Nearly all of that is the slower climb itself, 15 minutes instead of under 6. The total stop time stays at 22 minutes: the time saved at 18 and 15 m comes back at 9 and 3 m, because the slower compartments keep taking on gas during the long climb.
Gas switches
Limiting the deco gases to a ppO₂ of 1.5 instead of 1.6 moves the EAN50 switch from 21 m to 18 m and keeps the oxygen until 3 m, which adds two minutes. Allowing one minute for each gas switch adds another. A dive computer has its own version of this. A Shearwater assumes the diver will use every gas that is switched on.[8 ] Its manual gives the example of a 40 m, 40-minute dive at GF 45/85 with air and oxygen switched on. The computer predicts 8 minutes at 6 m and 12 at 3 m. A diver who never switches to the oxygen needs 19 and 38, so the time to surface is 37 minutes longer than predicted.
Gas entries
Some of the largest differences come from a single wrong entry. Earlier this year, a rebreather diver sent me two plans for the same 90 m (300 ft), 40-minute dive. Dive Kit gave a run time of 296 minutes and another planner 244, and the diver wanted to know which one was wrong. The other planner's printout held the answer. It showed an equivalent narcotic depth (END) of 101 m on the bottom, which is only possible with no helium in the loop. The diluent had been entered as EANx10 instead of trimix 10/70.[13 ]
On a rebreather, the setpoint controls the oxygen, and the diluent supplies the rest of the gas. At 90 m the loop is at about 10 bar, so with a setpoint of 1.2 it holds 1.2 bar of oxygen and just under 9 bar of nitrogen and helium, in the proportions the diluent contains (Figure 4). With 10/70 that is mostly helium, giving an END of about 15 m and a gas density of about 5 g/L. With EANx10 it is all nitrogen, giving an END of 101 m and a density of about 12 g/L, twice the recommended maximum of 6.2 g/L.[12 ] No one would dive that gas, yet a planner will still calculate a schedule for it.
Diluent 10/70 as planned
END 15 m · density 5.1 g/L
Diluent EANx10 as typed in
END 101 m · density 12.0 g/L
Partial pressure in the loop, bar (total about 10 bar at 90 m)
Changing only the diluent to EANx10 shortened Dive Kit's plan from 296 to 257 minutes. In the Bühlmann model, helium is taken up faster than nitrogen, so after 40 minutes at 90 m the 10/70 loop leaves more gas to release on the way up. The mistake made the plan shorter, not longer. With the other entries matched as well, Dive Kit gave 250 minutes against the other planner's 244, the kind of programming difference described in section 2.
Comparing plans before the dive
The START check, described by Brian Shreve on the TDI blog, ends with T for Tables: planned depth, time and gas switches.[11 ] When a team compares plans at that point, five things are worth checking:
- Gases. Every mix, including the helium, and the same deco gases and switch depths. On the computer, switch on only the gases being carried.
- Gradient factors. Both numbers.
- Last stop. 3 m or 6 m, for the main plan and the lost-gas plans.
- Time and rates. Whether the bottom time includes the descent, and the descent and ascent rates.
- Run time. Compare the total run time rather than individual stops. If the plans still differ by more than a few minutes, dive the longer one and find the reason after the dive. DAN gives similar advice for buddies whose computers disagree slightly: follow "the most conservative directive."[4 ]
The simplest approach is for one person to prepare the plan and share it with the team, so that everyone carries the same schedule. When two plans do disagree, going through these five points will usually find the reason.
If your team plans in Dive Kit
In Dive Kit, the settings that change a schedule are on the plan's Settings card: Gradient Factors, Deco Stops (last stop depth and stop time rounding) and Environment (water type and altitude) at the top, and under Advanced, the ascent and descent rates, the ppO₂ limits, the gas switch time and Include travel in level time. The settings guide describes each one and what it affects.
The easiest way to match a buddy's plan is to share it. A share link or QR code carries the whole plan, including the gradient factors, rates, last stop and gas list, so the buddy opens the same dive rather than a retyped copy. Two rebreather settings are not carried: Stay on the loop, and whether air breaks apply on the loop. Check those after importing a rebreather plan. Reset All in the plan's settings puts every overridden setting back to your own defaults.
Questions divers ask
Why do two deco planners give different schedules for the same dive?
There are four possible reasons: a different model (Bühlmann or a bubble model such as VPM-B), different programming of the same model, different conventions (such as how depth converts to pressure and whether the bottom time includes the descent), and different settings. When the model and every setting match, two Bühlmann planners usually agree to within a few minutes. Large differences almost always come from the settings or from a wrong gas entry.
If Bühlmann ZHL-16C is published, why do two planners that use it disagree?
Bühlmann published the model: the compartment speeds, their limits and the equations for how gas moves in and out. A planner needs many more decisions than that, such as where GF low applies, whether the compartments are recalculated during the ascent, how stop times are rounded, whether the swim between stops is counted inside a stop, and how strictly a ppO2 limit is applied. Each choice can move the first stop by a few metres and the total by a few minutes. In Dive Kit's own comparison of 33 dives, with the settings matched as closely as the two programs allow, Dive Kit and MultiDeco gave times to surface within three minutes of each other on 29.
Does a 6 m last stop add decompression time compared with 3 m?
It depends on the last gas. On pure oxygen it made little difference, one minute on a 45 m, 25-minute trimix dive, and that minute was the slower final ascent from 6 m. It did raise the CNS oxygen exposure from 38% to 61%. On EAN50 it added two minutes, and on back gas alone, the lost-gas plan, it added 29 minutes. With any gas other than oxygen, the diver breathes nitrogen or helium at a higher pressure at 6 m, so the compartments release gas more slowly.
Is the descent part of the bottom time?
It depends on the planner. A dive computer counts run time from the moment the diver leaves the surface, and MultiDeco treats the first level's time as a run time, so the descent is included. Dive Kit adds the descent on top by default, unless Include travel in level time is switched on. On a 45 m dive the difference was 5 minutes of run time, or 10 with a slow 10 m/min descent. Briefing the bottom time as a run time avoids the confusion.
What does GF low change?
GF low sets the depth of the first stop. On a 45 m, 25-minute dive, changing from GF 30/80 to 70/80 moved the first stop from 21 m to 15 m and changed the run time by two minutes. GF high has more effect on the total: 50/70 took 58 minutes and 50/85 took 53.
Which plan should a team follow if their plans disagree?
First match the settings that move a schedule: gases, gradient factors, last stop depth, whether the bottom time includes the descent, and the ascent and descent rates. Then compare total run time rather than individual stops. If the plans still differ by more than a few minutes, dive the longer one and find the reason after the dive. DAN's advice for buddies whose dive computers disagree slightly is similar: follow the most conservative directive.
Kaynaklar
- 1. Baker EC. Clearing Up The Confusion About “Deep Stops”. Immersed, 1998. PDF. Companion paper: Understanding M-values.
- 2. Helling R. Why is Bühlmann not like Bühlmann. The Theoretical Diver; 2 November 2017. Several of the same programming questions, discussed by one of the Subsurface developers. thetheoreticaldiver.org.
- 3. Pineda G. What is the Best Algorithm? They're all Wrong! InDEPTH; February 2026. indepthmag.com.
- 4. Divers Alert Network. Effective Use of Your Dive Computer. “There is no universal standard”, and the advice to follow “the most conservative directive”. dan.org.
- 5. Dive Kit. How Dive Kit compares to MultiDeco: 33 dives with every setting matched, and the reason for each difference. divekit.app/docs/engine/multideco-comparison. The programming choices behind the numbers: The decisions that shape your schedule, Gradient factors and Conventions.
- 6. HHS Software. MultiDeco help: important points. “Follow the run times. The displayed stop times include the time required for transit between stops.” hhssoftware.com.
- 7. Kieren J. Choosing the Best Decompression Gas. TDI blog; 20 March 2014. tdisdi.com.
- 8. Shearwater Research. Teric Operating Instructions, Rev H (2024), Last Stop setting: “It does not affect real time decompression calculations.” PDF. Perdix 2 Technical Operating Instructions, Rev B (2022): last stop depth and predicted time to surface, the 10 m/min ascent rate the calculations assume, and the worked example of a gas switched on but not used. PDF.
- 9. Shearwater Research. Perdix 2 firmware v102 release notes (November 2025): “Default value of GF Low is now 50% in all situations. So the default Tec mode GF is 50/70 (previously 30/70).” PDF.
- 10. Matching Perdix and MultiDeco. ScubaBoard; April–May 2017. Post by Shearwater (Bruce) on stops shorter than a minute. scubaboard.com.
- 11. Shreve B. Three Safety Protocols for Technical Diving. TDI blog; 2 July 2019. tdisdi.com.
- 12. Anthony G, Mitchell SJ. Respiratory physiology of rebreather diving. In: Pollock NW, Sellers SH, Godfrey JM, eds. Rebreathers and Scientific Diving. Proceedings of the NPS/NOAA/DAN/AAUS workshop, 2015. Durham, NC; 2016. (Gas density: 5.2 g/L ideal, 6.2 g/L maximum.) PDF.
- 13. Dive Kit guide. Why two planners give different runtimes. The 90 m rebreather case, step by step. divekit.app/docs/engine/why-plans-differ.
- 14. Dive Kit blog. Unpacking Gradient Factors, on what the two numbers do and what the evidence says about setting them. divekit.app/blog/unpacking-gradient-factors. For the basics of why the ascent has to be calculated at all: What Is Decompression?