The Evolution of CO₂ Training Tables

The article below is written by Richard Wonka for his project We Freedive and was originally posted in 2012. We repost it with his courteous permission.

In this article, we take a look at alternative ways of thinking about CO₂ tables by questioning the basic assumptions of the above example and exploring the opportunities we can derive from our answers.

If you have been in one of our advanced courses, you will already have trained using our re-thought CO₂ tables. We have added a little more thought to keep you from getting bored. Look at the minimum overall hold time towards the end of the article.

Thanks go to Ben Noble, Sarah Whitcher, Yann Dumas and Walter Johnson for their input and brainstorming.

Breathe-up Hold
2:00 2:00
1:45 2:00
1:30 2:00
1:15 2:00
1:00 2:00
0:45 2:00
0:30 2:00
0:15 2:00

The mother of all CO₂ tables.

We all have probably seen this ancient[1] prototype of a CO₂ table and likely used it or one very much like it for our first training sessions. It has apparently been the basis for all CO₂ training apps I have seen on smartphones or computers, it is featured in most freediving course curricula.

In order to structure what we are going to do, let us first define the goal we are pursuing.

What is the Purpose of a CO₂ Table? 

A common definition of CO₂ Tables:

A CO₂ Table is a sequence of breath holds which increases the amount of CO₂ with each hold in order to train the physical and mental tolerance to increased CO₂ levels in the body.

While other definitions are possible, this one is useful for our purposes and it will be the basis for our thought experiment.

How can a sequence of breath holds best achieve this goal? In order to train an atomic skill in any sport, we want to remove as many other factors as possible in order to facilitate focus on the one skill at hand. This suggests that we best train CO₂ tolerance in static breath holds, possibly even dry, which leaves us with only one other factor to think about: O₂. Once we have explored this possibility, we can go on to tackle dynamic CO₂ tables using the principles laid out in this article.

In order to make sure that we can focus on our experience of increased CO₂ levels, we want to make sure that our table is designed to ensure we never come close to hypoxia. We want the pure, worry-free CO₂ experience.

A CO₂ table exposes the diver to high CO₂ levels without getting near hypoxic states.

How can we now create a CO₂ table from scratch that will do that for us? First, let us think about the breathe-ups.

Considering Breathe-Ups 

So we want a breathe-up that will always supply us with enough O₂ while retaining as much as possible of the CO₂ produced during the last breath hold. Let’s take a look at how the above table tries to achieve this goal.

In the classic example, the breathe-up decreases by a given amount of time (here 15 seconds) before each hold, and increases the amount of CO₂ retained only towards the end of the table. So we spend a lot of time exhaling our precious CO₂ that we came to collect in the first place.

So why am I not a fan of this approach? Time is precious[2] - I want to offer my students efficient training methods - and it is not a very useful unit to account for amounts of gas exchange.

How much gas do we exchange in 15 seconds? - That depends on how much we breathe in 15 seconds, which is defined by how deeply and how often we breathe. The above approach can only provide consistent results when we assume a constant breathing volume and -frequency. Those are big assumptions, especially given the influence of increased CO₂ levels, which will very likely increase breathing frequency and volume, especially in relatively inexperienced freedivers who are most likely to train CO₂ tables. Let us reduce the number of assumptions and provide definitions instead.

First, we define one breath to be a full breath. That means that every time we breathe, we exchange our full vital capacity of gas in our respiratory system.

Full exhale, full inhale.

Now let us ask two relevant questions:

How much CO₂ are we exhaling in our breathe-up?

To answer our first question, we can use a unit of measurement that is commonly present and stable enough for consistency and that we are using anyway: One full breath. On each full breath, we purge (yes, I know, purge …) exactly the CO₂ content of one lung full of air.

One exhalation has thus become our unit of CO₂ reduction in our breathe-ups.

Count your full breaths to know how much you are breathing.

Having defined this in a simple, straightforward way, let us go on with the second question:

How much O₂ do we need for each breath hold?

That one is equally easy when we allow ourselves to let go of volumetric units. How many breaths does a freediver ever need for a dive? – Always just one. We do not really need to know more than that.

We know that we want the holds in our table to be far away from taking us into hypoxia, so one breath will be all we ever need to fully recover and prepare for the next hold. We will take a closer look at the effect this has on the holds below.

At this point it becomes clear where this is heading: The One-Breath Table, sometimes called the "crazy table" - let us know if you still think of it as crazy by the end of this article. I was introduced to this training table when training with Ben Noble:

The Noble Table™ was much simpler to write down and much simpler to practise:

Breathe-up Hold Repetitions
One breath 1:15 8

(Yes, that means: Lift head out of water, exhale, inhale, head goes back in the water.)

Simple and effective. One breath is enough, a 1:15 hold is definitely not taxing, our time in the water is dramatically reduced and we get good exposure to high CO₂ levels quite quickly.

But what if we want more CO₂? Can we tune this table to give us more CO₂ or save even more time? If it's  just to let out the freediving geek in us?

Yes we can.

Considering Holds 

To further work on the efficiency of our CO₂ table, we can start to think about the holds themselves. Ben reduced them from two minutes to 1:15 initially, as these holds would become difficult enough very quickly. Some progress had been made.

The declared goal of our CO₂ table is to spend lots of time at high CO₂ levels with minimal overhead. The one breath interval makes sure that we retain the maximum amount of CO₂ in between holds, now let us see if we can also base the holds on the CO₂ exposure instead of a given, fixed breath hold time.

Looking at the classic example above, we find that during the first few dives, we will spend most of our time cruising and we do not get to experience a lot of high CO₂, simply because we have been exhaling most of it in our long breathe-ups. Contractions will probably only come into play in hold number two, possibly even later.

How useful is spending time before contractions in a CO₂ table? Not very. No contractions means we have too little CO₂ to train our tolerance to it – we are wasting out time. Would we like a guaranteed CO₂ exposure on each dive? Sure! That is why we are here, after all!

So instead of defining the total dive time for each dive, we go on to define a hold by the time spent with high CO₂ (i.e. contractions) and our table will look something like this:

Breathe-up Hold Repetitions
One breath 1st contraction + 0:45 8

See that? We get 45 seconds of contractions guaranteed on each and every hold. Effective training right from the first dive.

So what about safety? We still want to make sure that our dives don’t get too close to hypoxia. Well, let’s take a look at what the holds in this particular table would roughly look like when performed:

# 1st contraction Total dive time
1 ~2:30 3:15
2 ~2:00 2:45
3 ~1:00 1:45
4 ~0:30 1:15
5 ~0:20 1:05
6 ~0:10 0:55
7 ~0:10 0:55
8 ~0:10 0:55

What happens here, is that the overall dive time decreases as the CO₂ level increases, simply because our contractions come on sooner with each hold[3]. Our safety margin is expanding the tougher the holds get (and they do get tough), which means that we can relax more and more and focus on our task, knowing that we are really doing quite short holds each time.

What if we want more? 

Enter the Dumas Extension™: While brainstorming on these,  Yann Dumas found that the last few dives in this table were really a waste of our efforts. He pointed out that a one-minute dive was quite short and we could easily and safely add a few seconds of extra CO₂ to the last few dives, giving us extra time with contractions still with a broad safety margin. - Bonus! This allows us to define a minimum duration of our dives, which we can derive from our level of training:

Breathe-up Hold Repetitions
One breath 1st contraction + 0:60s, min dive time 1:15 8

We now have a simple, solid table that gives us safe breath holds, loads of CO₂ and is easily adjustable for our needs and level of training. We simply give a signal to our buddy when we have our first contraction and our buddy will count us down and take care of the rest. We just sit it out.

What's not to like? - Well, I always try to get rid of the need for stop watches wherever I can. After all, I want to train my body, not my watch. So how could we go about getting rid of the stop watch?

How can we measure the amount of CO₂ we have been exposed to in a single dive?

Again, we are looking at a useful answer for our training, not necessarily a volumetric one. To answer this, we can - again - take a look at the reality of performing one of these tables and we will find one very prominent feature: Contractions.

As a variation on this theme, we can count our contractions instead of timing them, so we end up with something like this:

Breathe-up Hold Repetitions
One breath 25 contractions 8

Now, that is nice and simple. We can capture the essence of this table very quickly (it's a 25 x 8, right?) we don't need any additional hardware. And, yes, we still want a buddy as soon as we are in the water.


Removing time from the equation and using our breaths and contractions as units of measurement  allows us to focus on the objective of experiencing high levels of CO₂. We can dramatically increase the efficiency and safety margin of CO₂ tables, spending less time in the water with more CO₂ exposure, leaving more in-water time to do other cool stuff.

To try it out, start with any of these variations and take it from there:

Breathe-up Hold Repetitions
Example 1 One breath 1st contraction + 45s 8
Example 2 One breath 1st contraction + 60s, minimum duration 1:15 8
Example 3 One breath 25 contractions 8
The Whitcher™ One breath 1st contraction + 60 until you cry

Pro Tips: 

  • If you are worried about the overall duration of the first hold, just keep that one a bit shorter, no problem. You should not hit a personal best in a CO₂ table.
  • You have one breath. Breathe sloooowly. -- Really! -- Slow exhale, slow inhale. Take a few seconds for each. It will feel much better than breathing in and out quickly.
  • Have your buddy count your dives and coach you. Especially dives 3 and 4 tend to be tricky. Have your buddy talk you through them.
  • Once you have wrapped your head around these static tables, go on and apply the same principles to dynamic tables. - Think nothing but form and let your buddy count and coach. I recommend sticking to the same distance throughout the table. Best workout you've had in a while.

[1] Ancient: Ancient in freediving terms, that is. The sport is still a very young one.Measurement. Do we need to know this in litres or mol? I can not think how that would be of practical use in training, while it would be very interesting in research

[2] Time. For some good thoughts on time and the mindset in freediving, here are some quotes from Momo by Michael Ende. A book well worth reading. Note how Beppo must be a freediver the way he describes his job.

[3] Headspace. Interestingly, contractions do not set in instantly in the later dives, even with stupidly high CO₂ levels (try 1:15 x 15). Our headspace gives us some seconds of grace.

[4] Wonka: These tables have been dubbed the "Wonka Tables" - Thank you, I guess. :-)

Published on 22.04.2023