Mixing your own solution: from a recipe to grams on the scale
Contents
Standfirst: After reading this article you will be able to turn a recipe in milligrams of each element per litre into grams of each fertiliser salt for your tank, correcting for your raw water and for the purity on the bag. You will know in which order to solve the elements, how to make A and B stocks that do not precipitate, how to dissolve the salts, and what the EC meter should read when you are done.
Before you read: Fertiliser salts, Reading a formulation.
A recipe is mass of element; a bag is mass of salt
A nutrient formulation is written as the concentration of each element in parts per million, which for a dilute solution is the same as milligrams per litre, because a litre of water weighs a thousand grams1. A fertiliser salt delivers its element as a fixed fraction of its own mass, set by atomic weights. That fraction is the bridge between the recipe and the scale.
Resh derives it for calcium nitrate from the atomic weights calcium 40.08, nitrogen 14.01 and oxygen 16.001. One formula unit of Ca(NO₃)₂ holds one calcium, two nitrogen and six oxygen atoms, so its formula weight is 40.08 + 2 × 14.01 + 6 × 16.00 = 164.1, the calcium fraction is 40.08 / 164.1 = 0.244, and the nitrogen fraction is 28.02 / 164.1 = 0.1711. A recipe asking for 200 mg/L of calcium therefore needs 200 / 0.244 = 820 mg/L of pure calcium nitrate, which brings 140 mg/L of nitrogen with it1. Resh tabulates these fractions as conversion factors, “A to B” from element to salt and “B to A” from salt to element1; those used below are in the Key numbers table, and the notes re-derive each from its formula.
Two corrections turn the ideal mass into what goes on the scale. The first is purity: salts carry inert material, and Resh’s Table 3.3 gives calcium nitrate 90%, potassium nitrate 95%, potassium sulfate 90%, monopotassium phosphate 98% and magnesium sulfate 98%, noting that water of crystallisation is not an impurity and that the figure varies between manufacturers, so always read the bag1. At 90% purity the 820 mg/L becomes 820 × 100 / 90 = 911 mg/L1. The second is volume: multiply the milligrams per litre by the litres in the tank and divide by 1,000 to get grams1.
Some products are not the salt of the formula: Jones’s stock table calls for 118 g/L of calcium nitrate tetrahydrate but only 88.8 g/L of a product whose formula is 5 Ca(NO₃)₂ : 2 NH₄NO₃ : 10 H₂O2. Where the bag prints an analysis in percent of each element, that analysis replaces both the formula and the purity.
Start from your water
The recipe states what the plant should see, not what you must add: calcium, magnesium or sulfate already in the raw water count towards the target, and only the difference is weighed. Resh’s stock-solution example assumes raw water with 30 ppm of calcium and 20 ppm of magnesium, so for targets of 200 ppm calcium and 40 ppm magnesium the amounts to add are 170 and 20 ppm1. The numbers come from the water report described in Water quality; without one, use rain or reverse-osmosis water, or treat the contribution as zero and accept that calcium and magnesium will run high.
Solve the elements in the right order
Most salts carry two elements the plant uses. Resh’s third step is therefore to work out, after satisfying one element, how much of the other element the salt brought in, and his fourth is to supply the remainder of that second element from another source1. The order in which you solve the elements decides whether the arithmetic closes.
Start with elements that have a single source in your salt set. Calcium comes only from calcium nitrate, phosphorus only from monopotassium phosphate, magnesium only from magnesium sulfate, so those three masses are fixed first, and each brings a second element: nitrogen, potassium and sulfur respectively. The nitrogen still missing then comes from potassium nitrate, which brings more potassium, and the potassium still missing comes last from potassium sulfate, whose other element, sulfur, is rarely a target. Resh works through this chain, with one extra step: he takes 20 mg/L of nitrogen from ammonium nitrate before turning to potassium nitrate, so his potassium nitrate and potassium sulfate masses differ from those below1. If the salts for the single-source elements already exceed a shared target, the recipe cannot be met with that salt set; Reading a formulation explains why recipes are built in ratios so that this rarely happens.
Worked example: a 200-litre tank
The example uses Resh’s formulation and raw water so that you can check it against his book. The targets are 200 ppm nitrogen, 50 ppm phosphorus, 300 ppm potassium, 200 ppm calcium, 40 ppm magnesium, 5 ppm iron and 0.8 ppm manganese, in raw water with 30 ppm calcium and 20 ppm magnesium1. We choose a 200 L tank; factors and purities are Resh’s1, and the arithmetic was re-run in Python in the notes.
Step 1, raw water. Calcium to add: 200 − 30 = 170 mg/L; magnesium to add: 40 − 20 = 20 mg/L1.
Step 2, single-source elements. Calcium nitrate: 170 × 4.094 = 696 mg/L, bringing 696 × 0.171 = 119 mg/L of nitrogen1. Monopotassium phosphate: 50 × 4.394 = 220 mg/L, bringing 220 × 0.287 = 63 mg/L of potassium1. Magnesium sulfate heptahydrate: 20 × 10.14 = 203 mg/L, bringing 203 × 0.130 = 26 mg/L of sulfur1.
Step 3, shared elements. Nitrogen still needed: 200 − 119 = 81 mg/L, so potassium nitrate: 81 × 7.221 = 585 mg/L, bringing 585 × 0.387 = 226 mg/L of potassium1. Potassium still needed: 300 − 226 − 63 = 11 mg/L (10.6 before rounding), so potassium sulfate: 10.6 × 2.229 = 24 mg/L, bringing 4 mg/L of sulfur1. Sulfur, about 31 mg/L in total, is a by-product; this recipe sets no target for it1.
Steps 4 and 5, purity and grams. Divide each pure mass by the purity fraction, multiply by 200 L, divide by 1,0001.
| Salt | Pure salt, mg/L | Purity1 | Salt as sold, mg/L | Grams for 200 L |
|---|---|---|---|---|
| Calcium nitrate, Ca(NO₃)₂ | 696 | 90% | 773 | 154.7 |
| Potassium nitrate, KNO₃ | 585 | 95% | 616 | 123.1 |
| Monopotassium phosphate, KH₂PO₄ | 220 | 98% | 224 | 44.8 |
| Potassium sulfate, K₂SO₄ | 24 | 90% | 26 | 5.3 |
| Magnesium sulfate, MgSO₄·7H₂O | 203 | 98% | 207 | 41.4 |
Step 6, micronutrients. For a chelate containing 10% iron the factor is 10.0, so 5 ppm needs 50 mg/L, or 10 g for 200 L1. For manganese sulfate the factor is 4.061, so 0.8 ppm needs 3.25 mg/L; Resh uses 90% as a placeholder purity, giving 3.6 mg/L, or 0.72 g for 200 L1. The choice of chelate is in Micronutrients and chelates.
From the tank to 100× stock solutions
A stock solution is the same recipe concentrated 50, 100 or 200 times, to be diluted by an injector or by hand, and Resh says the strength is limited by the least soluble fertiliser1. Two stocks are needed because at stock strength calcium reacts with sulfate and with phosphate to form solids. Resh states that the sulfates of potassium sulfate or magnesium sulfate precipitate with calcium from calcium nitrate at high concentration1, and Mason describes calcium phosphate falling to the bottom of the tank as a sludge that takes most of the calcium and phosphate with it and may block irrigation lines and nozzles3. Hence Mason’s rule: never mix the concentrated stocks, only the diluted ones3.
Resh’s split is the standard one: stock A takes all of the calcium nitrate, any ammonium nitrate, nitric acid to bring its pH under 5.0, the iron chelate and half of the potassium nitrate; stock B takes the other half of the potassium nitrate, the potassium sulfate, monopotassium phosphate, magnesium sulfate and the remaining micronutrients1. Potassium nitrate is halved because it is one of the two least soluble salts in the set1. The solubility check is done in grams per 100 mL of cold water, Resh’s unit1. For the 200 L tank, make 10 L of each stock at 100×, enough for five fills; each stock then carries 100 × 10 / 200 = 5 times the masses in the table1.
| Stock | Salt | Grams in 10 L | g per 100 mL | Solubility, g/100 mL1 |
|---|---|---|---|---|
| A | Calcium nitrate | 773 | 7.7 | 121.2 |
| A | Potassium nitrate (half) | 308 | 3.1 | 13.3 |
| A | Iron chelate (10% Fe) | 50 | 0.5 | very soluble |
| B | Potassium nitrate (half) | 308 | 3.1 | 13.3 |
| B | Monopotassium phosphate | 224 | 2.2 | 33.0 |
| B | Potassium sulfate | 27 | 0.3 | 12.0 |
| B | Magnesium sulfate | 207 | 2.1 | 71 |
| B | Manganese sulfate and other micronutrients | 4 | 0.04 | not limiting |
All dissolve. Dosing is then a ratio: at 100×, one litre of final solution needs 10 mL of stock A and 10 mL of stock B, so the 200 L tank needs 2 L of each1. Raw water entered the calculation in step 1 and nowhere else, so a stock made for one water is wrong for another1.
Weighing, measuring and the error of each
Resh asks that salts be weighed to within ±5%, with a gram balance accurate to 0.1 g for anything under a pound, and Mason gives the same tolerance, adding that within it the effect on plants is negligible1,3. The tolerance applies to each salt, so the scale must resolve 5% of the smallest mass you weigh1,3. In the example that is 0.72 g of manganese sulfate: a kitchen scale reading to the nearest gram can be out by 0.5 g on it, 69% of the mass, whereas the 4 g that goes into the 10 L stock is weighable on a 0.1 g balance to within 3%1.
Volumes follow the same logic: an error of 100 mL in the 2 L dose, or of 10 L in the 200 L tank, is a 5% error in every element at once1. Use a jug or cylinder whose smallest division is well inside the tolerance, and measure the tank’s true volume once by filling it from a known container. Mason’s advice to lay the weighed salts out in separate piles and compare their sizes and colours before dissolving catches the gross errors, a salt left out or weighed twice, that no scale can3.

The order of dissolving
Dissolving order matters for the reason stocks are split: wherever a concentrated patch of calcium meets a concentrated patch of sulfate or phosphate, a solid forms. Resh’s procedure for a normal-strength tank starts with the tank about one-third full, dissolves each salt individually in a bucket, adding water and pouring off the dissolved portion until the whole salt has entered solution, and adds the macronutrients before the micronutrients1. Potassium sulfate goes in first, potassium nitrate when the tank is half to two-thirds full, magnesium sulfate and the phosphate at three-quarters, then calcium nitrate slowly while the solution circulates, the micronutrients except iron follow, the pH is checked, and the iron chelate is added last before topping up1. Mason says the order is unimportant provided the less soluble salts are dissolved as far as possible3, the same mechanism seen from the other side.
For stock tanks Resh warns that the water used to dissolve the salts can exceed the final volume on its own, so start with little water in the tank; the iron chelate in stock A and the micronutrients in stock B go in last, after topping up and adjusting the pH to about 5.51.
Acids and safety
Mixing usually ends with a pH correction by acid; the reasoning and the dose are in pH in hydroponics and Alkalinity and buffering. Resh states that strong acids cause severe injury, that acid is always added to water and never water to acid, and that gloves, apron, goggles and an approved respirator should be worn; he singles out nitric acid for the toxic fumes it gives off in contact with air1. The NIOSH Pocket Guide lists combustible materials, metallic powders and alcohols among nitric acid’s incompatibilities and gives the first aid for eye and skin contact as immediate irrigation and water flushing6, so keep the acid in its own labelled container away from the salts, with running water within reach.
Standard operating procedure
- Read the recipe and your latest water report; subtract the raw-water calcium, magnesium and sulfate from the targets1.
- Calculate the grams of each salt with the purity or analysis from each bag; write the list down before you weigh1.
- Put on gloves and eye protection; with acid, add the apron and respirator and have running water within reach1,6.
- Weigh each salt separately on a scale that resolves 5% of that mass, into labelled containers; check the piles against the list1,3.
- Fill the tank to about one-third; dissolve each salt in its own bucket until nothing remains, pouring the solution into the tank1.
- Add potassium sulfate, then potassium nitrate as the tank passes half full, then magnesium sulfate and the phosphate at three-quarters; add calcium nitrate slowly and alone while circulating; then the micronutrients except iron1.
- Check and adjust pH, add the iron chelate, top up to the final volume. For stocks A and B, never let the two concentrates meet1,3.
- Circulate for 5 to 10 minutes, then read EC and pH and adjust pH into the crop’s range, which Resh gives as 5.8 to 6.41.
- Label every container with contents, concentration and date; log the masses, the water used, and the EC and pH readings, and compare the EC with previous batches before the solution reaches a plant.
What the meter should say
A correctly mixed recipe gives a repeatable EC. Mason’s tomato recipe diluted 1 in 100 gives an EC of 3.0 mS/cm3; Jones’s general-purpose formulation at the same dilution gives 2.52; Kratky fills his lettuce tanks from two stocks to an EC of 1.5 mS4. The value depends on the recipe and the raw water, so the number to compare against is the logged reading from the first batch whose weighing you trust. Since every mass is held to ±5%, a reading more than a few percent from that record means a salt omitted or added twice, a wrong tank volume, a stock dosed at the wrong ratio, or a change in the raw water1,3. Find the cause first; a low EC caused by forgotten potassium nitrate is not fixed by adding more of everything, and the meter cannot say which salt is missing (EC and concentration).
The pH reading is the second check. Resh adjusts the fresh solution to between 5.8 and 6.4 and, in a recirculating system, circulates it for 5 to 10 minutes and checks again, because a pH above 7.0 precipitates iron, manganese, phosphate, calcium and magnesium as insoluble salts1.
How long solutions keep
A concentrated stock is a solution of stable mineral salts; the hazards to it are evaporation, a cold night that pushes a salt near its solubility limit out of solution, and light, which lets algae grow. Neither Resh nor Jones states a shelf life for a stock, and we have not found one in a primary source, so this article gives none. Keep stocks closed, dark and cool, and remake a stock that has thrown a solid rather than dose from it, since the solid holds the calcium or phosphate the plants were meant to get3.
The mixed solution has a working life set by the plants. Resh gives the life of a nutrient solution in a closed system as 2 to 3 weeks, and as little as a week in summer with mature, high-yielding plants, because the crop removes elements at different rates and only a laboratory analysis shows what is left1. Hoagland and Arnon recommended, when analyses cannot be made, the arbitrary procedure of draining out the old solution every week or two5. Kratky’s non-circulating lettuce tanks are drained and refilled, as a general rule, after every three crops or sooner4. What happens inside a running solution between changes is the subject of Managing a recirculating solution.
Key numbers
| Quantity | Typical value or range | Conditions | Source |
|---|---|---|---|
| Calcium nitrate: salt per mg of Ca; N per mg of salt | 4.094; 0.171 | anhydrous formula, atomic weights Ca 40.08, N 14.01, O 16.00 | 1 |
| Potassium nitrate: salt per mg of N; K per mg of salt | 7.221; 0.387 | formula KNO₃ | 1 |
| Monopotassium phosphate: salt per mg of P; K per mg of salt | 4.394; 0.287 | formula KH₂PO₄ | 1 |
| Potassium sulfate: salt per mg of K; S per mg of salt | 2.229; 0.184 | formula K₂SO₄ | 1 |
| Magnesium sulfate heptahydrate: salt per mg of Mg; S per mg of salt | 10.14; 0.130 | formula MgSO₄·7H₂O | 1 |
| Iron chelate (10% Fe); manganese sulfate: salt per mg of element | 10.0; 4.061 | Resh Table 3.2 | 1 |
| Purity of common salts | Ca(NO₃)₂ 90%, KNO₃ 95%, K₂SO₄ 90%, KH₂PO₄ 98%, MgSO₄·7H₂O 98% | Resh Table 3.3; check the bag | 1 |
| Solubility in cold water, g/100 mL | KNO₃ 13.3, K₂SO₄ 12.0, KH₂PO₄ 33.0, Ca(NO₃)₂ 121.2, MgSO₄ 71 | limits stock strength | 1 |
| Stock concentration | 50×, 100× or 200× | set by injector and least soluble salt | 1 |
| Weighing tolerance | ±5% of each salt | effect on plants negligible within it | 1,3 |
| Salts for 200 L of Resh’s recipe (derived) | Ca(NO₃)₂ 154.7 g, KNO₃ 123.1 g, KH₂PO₄ 44.8 g, K₂SO₄ 5.3 g, MgSO₄·7H₂O 41.4 g | raw water 30 ppm Ca, 20 ppm Mg; Resh purities | 1 |
| pH of fresh solution | 5.8 to 6.4 | adjust after mixing, before iron chelate | 1 |
| EC of named recipes at 1:100 | 3.0 (Mason tomato), 2.5 (Jones general), 1.5 mS (Kratky lettuce) | recipe-specific; compare with your own record | 2,3,4 |
| Life of a mixed solution, closed system | 2 to 3 weeks; weekly in summer with mature crops | Resh; Hoagland and Arnon: every week or two | 1,5 |
Common mistakes
- Weighing the salt for the whole target when the water already supplies part of it. Raw-water calcium and magnesium count towards the recipe, and only the difference is added1.
- Calculating the second element from the purity-corrected mass. The impurity brings no nitrogen or potassium, so the contribution comes from the pure mass1.
- Putting calcium nitrate and the phosphate or sulfates in the same stock tank. At stock strength calcium phosphate and calcium sulfate precipitate, and the sludge holds the calcium and phosphate and blocks nozzles1,3.
- Weighing a micronutrient on a scale that reads to the gram. The rounding alone exceeds the ±5% tolerance; micronutrients belong in a concentrated stock weighed on a 0.1 g balance1,3.
- Correcting an unexpected EC by adding more salts. A reading off the record means a weighing, volume or dosing error, and EC cannot say which element is short1,3.
Summary
A recipe states milligrams of each element per litre; a bag delivers a fixed fraction of each element, set by atomic weights, and the conversion factor is that fraction. Subtract what the raw water supplies, fix the salts that are the only source of an element first, let each salt’s second element reduce the balance of that element, and take the last balances from potassium nitrate and then potassium sulfate. Correct for purity, multiply by the tank volume, and you have grams on the scale. Stocks are split into A, with calcium, and B, with phosphate and sulfate, because at stock strength those ions form solids. Dissolve each salt fully and separately, add calcium nitrate alone and iron chelate last, and adjust the pH before the solution meets a plant. Hold every mass and volume to ±5%, record the EC of a trusted batch, and treat a later departure from it as an error to find.
Next in the series: Micronutrients and chelates.
References
- Resh, H. M. (2013). Hydroponic Food Production: A Definitive Guidebook for the Advanced Home Gardener and the Commercial Hydroponic Grower, 7th ed. CRC Press, Boca Raton. ISBN 978-1-4398-7869-9.
- Jones, J. B. Jr. (2005). Hydroponics: A Practical Guide for the Soilless Grower, 2nd ed. CRC Press, Boca Raton.
- Mason, J. (n.d.). Commercial Hydroponics, 3rd ed. ACS Distance Education. ISBN 978-0-9871022-2-5.
- Kratky, B. A. (2009). Three non-circulating hydroponic methods for growing lettuce. Acta Horticulturae, 843, 65–72.
- Hoagland, D. R. and Arnon, D. I. (1950). The water-culture method for growing plants without soil. California Agricultural Experiment Station Circular 347 (revised). https://archive.org/details/watercultureme3450hoag/
- NIOSH (2019). Nitric acid. NIOSH Pocket Guide to Chemical Hazards, National Institute for Occupational Safety and Health, Centers for Disease Control and Prevention. https://www.cdc.gov/niosh/npg/npgd0447.html
This article was drafted with the help of AI tools and reviewed and edited by PonicLabs. Sources are listed above; tell us if you find an error.