Constructing a DIY CO2 system with night-time shutoff, pressure safety valve and 100% efficient CO2 reactor.



Not long after getting my first fish tank (a small 75L tropical setup) I began to see pictures of amazing planted aquariums, full of life, colour and interest. If you are anything like me, I’m sure you know the ones I mean, and have been equally amazed and inspired by these beautiful creations.

Well, it quickly became my desire to create and maintain my own heavily planted aquarium, and after some success with a low-tech setup (low light levels, no CO2 and no substrate) I decided to upgrade to a high-tech setup.

The lighting and substrate were easy enough to buy and install, but the CO2 presented quite a big problem – namely the cost!

I had recently upgraded to a 180L tank and was on a shoe string budget, so I knew that the option of installing a pressurised CO2 system with gas tank, solenoid night time shut off, and pressure regulator was right out the window!

That left me with one possibility – to construct my own CO2 injection system…


I started trawling the Internet and talking to other fishkeepers who had constructed their own CO2 systems – all using the now familiar 2L fizzy drink bottle with a yeast mix.

However, almost all of the information I read revealed many problems with these systems - namely:

  1. no night-time shut off option;

  2. clogs in CO2 line from yeast mix;

  3. always a nightmare to try to get the tubing to go through the bottle caps in an airtight way.

  4. catastrophic filter failure if the air-inlet nozzle of the filter was used;

  5. dissolving 100% of CO2 produced into the water;

  6. if a reactor was used, the sponge to plug one end of it would eventually clog and need cleaning;

  7. no bubble counter, so a lack of control over the amount of CO2 injected;

  8. CO2 is highly corrosive and any metal parts eventually break down and corrode. Even standard airline tubing is quickly destroyed if used for CO2.

One particularly good source of information was an article by John LeVasseur entitled “A Treatise on DIY CO2 Systems for Freshwater-Planted Aquaria” and I want to give full credit to LeVasseur for his design, as it was the basis of my own construction project. You can see LeVasseur’s design in this diagram taken from his article:

Through his design, LeVasseur had solved some of the problems in our list, but one weak point of his design was in the reactor. Unfortunately, the reactor he proposes uses an airstone, which can easily clog as it becomes corroded due to the CO2.

Also, to stop excess CO2 bubbles from leaving the bottom of the reactor, his design calls for a sponge to be used. Over time, this sponge will trap more and more particles and debris in it, leading to a build up of pressure and a lock of the pump impellor (and therefore stopping the CO2 injection completely).

So, with some more research, I found a solution designed by an American fishkeeper who proposed the use of a tapered “bell” shaped vessel to use as the reactor. The scientific principal in effect here is that the water and CO2 being injected at force will come into the bell at the top, then lose pressure as it flows into the wider area. As the pressure drops, the bubbles return to the top and are dispersed into the water.

OK, enough of the science and the planning, lets get on with the constructing!


Here is a list of the things I need, plus details of where I got them from and the cost involved:

  1. a glass chimney for an old oil lamp. This is the perfect shape for our reactor, plus they are widely available in a variety of widths and lengths to suit all tanks. Get one that is tall enough for the output of your pump. This way, the CO2 bubbles will not escape out the bottom. My tank is 55cm deep, so I bought a 3” burner fit which measured about 7.5 inches in total length – more than enough for my pump output of 400l/h. I found this on eBay for 14 delivered.

  2. a fruit juice bottle. The key thing here is to have a bigger cap than the standard bottle size (like what is on the 2L bottles) This will make it easier to fit two bulkhead fittings into it later in our construction. Cost: 50 cent, and it even came with free juice inside

  3. A couple of 2L fizzy drinks bottles. Make sure you get bottles that have fizzy drink inside them as they will be engineered to withstand the high pressure that can build up in a yeast based CO2 system. I think the juice was about €1 per bottle; and once again, you get some yummy liquid inside them for free!

  4. 2 bulkhead fittings used for model jet aircraft fuel lines. This is taken directly from LeVasseur’s design, and like him, I got mine from Tower Hobbies in the States ( and 4 of these cost me $21.00 delivered (about €15.00)

  5. A simple submersible water pump. Any simple pump will do, but just make sure it as an “air intake nozzle” on the outflow pipe. This was another purchase from eBay all the way from Hong Kong and cost me only €8.00 delivered!

  6. Airline connectors. These were a batch lot on eBay with 4 T-pieces, 4 L-pieces and 4 inline connectors. A good deal at €3.50

  7. 4 Non return valves. The important thing to note here is that these DO NOT have metal insides so will not corrode because of the CO2. They are made by a company called “Algarde” and 4 of them cost me €6.58 delivered. They also have the added advantage of being semi-transparent which as you will see, became a great bonus later on.

  8. Airline tubing developed specifically for CO2. This is slightly more expensive than the standard stuff, but wont corrode so I think its essential. And at only €4.50 for the 6ft I would need, it wasn’t too expensive.

Total cost of materials - €53.08

The first thing to do after washing out each of the bottles was to attach the glass chimney onto the outflow pipe of my water pump. N.B. It is important at this stage to make sure that the outflow pipe does not flow into the centre of the chimney, but rather against one of the sides. Unlike LeVasseur’s idea, we want to be a bit more scientific and employ a vortex principle within our reactor so the bubbles of CO2 are mashed against each other and become very small very quickly.

Refer to PHOTO 1 to see the location of the outflow pipe and chimney.

PHOTO 1: the outflow pipe is angled to create a swirling vortex inside the reactor.

As you can see, I used some cassettes to hold the chimney stable while getting the position just right. (side note: the eagle-eyed among you may see that I used a selection of Jimi Hendrix and Chris Issac, but I believe any quality music cassette will work just as well )

To seal the end of the chimney, I used a clear plastic CD sleeve (these are made of polyurethane which is a safe plastic for aquariums) and cut into this a small rectangle so that the pump outflow pipe could sit when it needed to be.

Aquarium grade silicone was then slowly poured into the chimney from the top, where it rested on the CD sleeve, gluing everything together in a very firm bond. (N.B. please ensure you use aquarium grade silicone as the stuff you use for your tiles in the bathroom has fungicide and other nasties in it which are generally bad news for your fish!)

I had to use a small stick to push the silicone into all the nooks and crannies around our reactor top. Aim for about 10mm depth without any bubbles, gaps or holes. This should give an airtight seal.

You may find it easier to roughen the glass inside the chimney before applying the silicone in order for it to bond better. I must admit I didn’t do this, and it has been absolutely fine ever since.

Once the silicone has cured (leave it for about 24hrs to cure fully) I simply cut off the excess CD sleeve with a sharp craft knife.

PHOTO 2 shows how mine looked when complete. It’s a bit messy and I’m disappointed in myself for not taking more time to make this better. I assumed that the “clear” silicone would be exactly that – clear; instead it has gone more white than clear. Oh well, live and learn!

PHOTO 2: the finished reactor ready for attaching to the outflow of our pump.

The next thing to do is insert the bulkhead fittings into our bottle tops. I used a 5mm drill bit and a Draper hand drill to do this. Remember not to drill fast into plastic as it will tear and create rough edges. I used a small round file to gently smooth the holes once drilled.

N.B. if your bottle tops have that plastic wadding inside them (the circular piece of plastic that is stuck underneath the top) then leave it there. It is a great help when we come to seal the joint.

Put one bulkhead fitting in each of the 2L caps, ensuring that it goes all the way through the hole, right up to its collar. Then simply screw on the lock bolt with your fingers, and tighten it using two sets of pliers. And that’s it! What a great way to get an airtight mechanical seal. So much better than all that squeezing a piece of airline through the hole, and trying again and again to get an airtight seal with silicone.

The best part is – its completely removeable should you ever want to upgrade or changes the bottles!

Next put two bulkhead fittings into the small bottle cap. This is where the benefit of having a larger cap comes in, because you should have plenty of room for the two fittings. This smaller bottle is an important part of the system, as it is the Separator – making sure that should any yeast bubbles or liquid rise up the tubing, they won’t get into the reactor or pump. Photo 3 shows my finished Separator cap and you can see one of the 2L bottle caps in the background; also ready to go.

PHOTO 3: the Seperator lid showing both bulkhead fittings firmly attached.

So with the bottle caps and bulkheads in place, the next thing to be done was to fit the tubing onto the different parts. Now this tubing had come to be tightly wound and absolutely refused to go into a straight line. I was able to soften it by submersing in very hot water for about 30 seconds. This then allowed me to bend it into whatever shape I needed. I used the T connectors to join the bits of tubing together allowing me to have two 2L bottles for the yeast mix, feeding into the Separator bottle. This then fed out and into my pump (onto the air-inlet nozzle) and from there, into my reactor.

A pretty efficient system, and one which can grow with you. If you need more CO2, just add another bottle, pop 1 more T connector onto the tubing and Bob’s your uncle…. more CO2.

Don’t forget to place your non-return valves between your Separator bottle and the 2L yeast bottles. Also, I recommend placing one just before the reactor as this will stop water creeping back down the tubing when your “pressure release valve” is removed.

And heres a handy little tip I found out…

If you use the Algarve non-return valves as I did, and fill one with water, it acts as a perfect bubble counter. Because its semi-transparent you can actually see the bubbles of CO2 flowing through the valve and count them as they go! Although you cant control their rate, it does give you a brilliant indication of when you need to change your yeast mix and when CO2 production is running at optimum levels.

The last feature of the system is to install the pressure release valve. In LeVasseur’s design, this is simply a T connector with a rubber nipple on it, which will “blow” off if the pressure within the tubing gets too high. I feel that this is a very important safety feature which too many people leave out of their CO2 setups. I certainly didn’t want to make the mistake others had made, when they underestimated the sheer amount of pressure that can build up in a blocked system, only to come home to a room covered with sticky, smelly yeast mix and blown up equipment! (that’s the reason you never use glass bottles for the yeast mix, only a Champagne bottle could withstand the pressure)

Fortunately, one benefit of LeVasseur’s design is that this pressure release can also double as a night-time shut off! When I found this little bonus I was over the moon because this has long been the major downfall of the yeast based system – you cannot turn the CO2 production off at times when you don’t want it…. but now, its completely possible.

To install this valve, I used the rubber nipple that came with my water pump. This nipple usually sits on the air-intake nozzle when not in use, so it is a perfect fit for our tubing connectors. At night I take it off and the CO2 releases harmlessly into my room, and in the morning I replace it and the CO2 immediately starts going back into the tank. Without this release valve, the only other way to stop CO2 entering the tank at night is to switch on/off your reactor’s pump; but this doesn’t work at all, because the CO2 is still being produced and going into the reactor, but in the morning when you try to switch the pump back in, it is full of CO2 and consequently air-locked!


PHOTO 4: the reactor in full flow with lots of CO2 being happily absorbed

Photo 4 shows the whole system in operation. Here it is in situ in my tank. The glass reactor is very well hidden, and almost becomes invisible in the water; until the bubbles start coming into it that is! You can clearly see the vortex effect in the bottom centre of the reactor, and the bubbles then returning up the sides of the reactor to the outlet pipe at the top. Zero bubbles leave the bottom of the reactor so we have nearly 100% efficiency – a fantastic result for any CO2 system, let alone one we built ourselves!


I have had my CO2 system up and running now for about 4 months, and its been robust and reliable that entire time; giving me constant CO2 levels of anywhere between 16ppm right up to 35ppm when I change the yeast mix and changed to larger bottles.

If you have a larger tank, you can obviously add as many 2L bottles as you need, but I found that my local supermarket sold fizzy drinks in 3L bottles, so I have bought two of those and hooked them up. I now get more CO2 produced for slightly longer, and have a nice routine figured out, replacing one bottle every 10 days. This gives me a constant CO2 level of 20ppm.

New thinking on CO2 use within the planted aquarium is now suggesting that we use “CO2 mist”. Basically meaning, to use a diffuser which produces micro-bubbles of CO2 which are then pushed around the aquarium for uptake by the plants.

I as interested to experiment with this theory, and adapted my system by simply tilting my reactor to about 10 degrees. This tilt means some of the bubbles escape the bottom of the reactor and travel towards the surface of my tank. I then placed the outflow of one of my filters to push into these micro-bubbles, which disperses them throughout the aquarium. See Photo 5 for an overhead view of this. By using this CO2 mist my CO2 levels remain at around 20ppm but my plants are noticeably pearling more; so I think that the micro-bubbles may be easier for the plants to utilise?

So it’s onward and upward from here. Please have a go at creating your own CO2 system; I’m sure you’ll love the challenge and be rewarded by the results. Also, I’d love to hear about your own experiences, advice, yeast recipes, questions and anything else that tickles your fancy.

As for me, I am just finishing off my own design for a moonlight setup, with DIY Compact T5 ballasts. So far it’s not as cheap as I thought it would be…. but that’s a story for another article

Andrew Hanley.

(also known as Cardnim on the ITFS forum)