Hydroponic Nutrient Calculator: Salt Weights, ppm and EC
Calculate macronutrient salt weights, compare target and achieved elemental ppm, plan separate A/B stocks, and estimate EC from the dissolved ions.
This hydroponic nutrient calculator turns an elemental macronutrient profile into salt weights for a measured final volume. It is intended for students, laboratory users and growers who need to understand what each salt contributes. Choose Hoagland Solution 1, Hoagland Solution 2, or custom targets, and use the strength multiplier for dilution trials. The Hoagland solution calculator covers the major elements N, P, K, Ca, Mg and S; it does not supply a complete iron and trace-element recipe.
Enter nutrient concentrations as elemental mg/L, approximately elemental ppm in dilute water. Nitrogen means nitrogen atoms, including nitrate nitrogen and any ammonium nitrogen. Phosphorus and potassium mean P and K, rather than the fertilizer-label oxide equivalents P₂O₅ and K₂O. For custom calculations, enter the additions needed after accounting for your source-water analysis. The EC model represents these added salts in otherwise low-mineral water; it does not calculate the conductivity of an uncharacterized source water.
The allocation follows a clear priority. Calcium nitrate supplies calcium, Epsom salt supplies magnesium, and the chosen monobasic phosphate supplies phosphorus. Potassium nitrate then supplies as much remaining nitrogen and potassium as both targets permit. Potassium sulfate fills remaining potassium. Sulfur is consequently a comparison target rather than an independently adjustable ingredient. Some requested profiles are impossible with these salts: inspect the target-versus-achieved bars, numerical differences and warnings before weighing anything.
Use the exact chemical forms shown in the salt table. Calcium nitrate tetrahydrate and magnesium sulfate heptahydrate include crystal water in their weighed masses. A commercial calcium nitrate blend containing ammonium nitrate is a different material. The calculation assumes pure salts; fertilizer-grade products require their actual analysis and are outside this tool’s formulation model.
For stock preparation, tank A contains calcium nitrate and potassium nitrate. Tank B contains phosphate, magnesium sulfate and any potassium sulfate. Make each tank up to the displayed final stock volume. Add A into most of the reservoir water, mix, add B separately, and then top up to the specified final nutrient volume. Never combine the concentrates. Separation reduces calcium phosphate and calcium sulfate precipitation risk, but it does not establish solubility of a mixed stock at its storage temperature.
The ppm to EC comparison is an estimate from the dissolved ions, their mobilities and a reduced sulfate-pairing model. Read EC at 25 °C when comparing with a temperature-compensated meter. A meter’s 500 or 700 ppm convention is only a display scale; it cannot identify individual nutrients. The model is restricted to dilute solutions, 15–30 °C, and an assumed final pH around 5–6.5. Check actual EC and pH after mixing. It does not predict pH, fertilizer compatibility with every additive, equilibrium precipitation, crop suitability, or nutrient uptake over time.
How it is calculated
The recipe benchmarks are Hoagland and Arnon, Circular 347, revised January 1950, printed p. 31 (attached OCR page 22). Solution 1 uses 1, 5, 5 and 2 mmol/L of KH₂PO₄, KNO₃, Ca(NO₃)₂ and MgSO₄. Solution 2 substitutes NH₄H₂PO₄ at 1 mmol/L, with 6 mmol/L KNO₃ and 4 mmol/L Ca(NO₃)₂.
Salt allocation. Convert elemental mass concentrations to molar concentrations. Match Ca, Mg and P first. Remaining nitrogen is the target less two nitrogen atoms per calcium nitrate and any nitrogen from ammonium phosphate. Use the smaller remaining N and K requirement as KNO₃; fill remaining K with K₂SO₄. All masses remain nonnegative. Sulfur follows from the sulfate salts, so it is reported against a comparison target. The procedure is a stated priority rule, not a least-squares optimizer. Salt mass is concentration × molar mass × final volume. Molecular masses are derived from the named chemical formulas and conventional rounded atomic weights.
Stock dilution. For multiplier f, make each assigned stock to V/f and dose that entire volume into a final batch V. Thus a 100× A/B pair supplies 10 mL A and 10 mL B per final liter. A and B together displace 2% of the final volume; do not add them to an already full reservoir.
Conductivity. McCleskey et al. (2012), equations 7–9 and Table 1, printed pp. 371–372: κ = Σ λᵢmᵢ, I = ½Σmᵢzᵢ², and λᵢ = λᵢ⁰(T) − Aᵢ(T)√I/(1+Bᵢ√I). Apply the published ion coefficients for Ca²⁺, Mg²⁺, K⁺, NH₄⁺, NO₃⁻ and SO₄²⁻. This implementation uses the original Table 1 calcium polynomial, rather than a later alternative fit.
A reduced mass-action calculation removes neutral CaSO₄ and MgSO₄ pairs using the temperature expressions in the attached USGS phreeqc.dat snapshot and Davies activities (A approximated as 0.509). A sulfate mass balance is solved by bisection and ionic strength is iterated. H₂PO₄⁻ uses the Nernst–Einstein relation F²D/(RT) with PHREEQC D₂₅ = 0.846×10⁻⁹ m²/s; its temperature response follows the K⁺ limiting-conductivity ratio as an explicit approximation. Ion molalities are approximated from molarity using 1 kg water per liter. This reduced model is not a full PHREEQC/WATEQ implementation.
Assumptions
- Pure Ca(NO₃)₂·4H₂O, KNO₃, KH₂PO₄ or NH₄H₂PO₄, MgSO₄·7H₂O, and K₂SO₄. No fertilizer-grade ammonium nitrate blend or purity correction.
- Low-mineral source water. Custom targets represent required additions; the tool does not include background ions or estimate their conductivity from a blank EC.
- Final pH is approximately 5–6.5, with phosphate represented as H₂PO₄⁻ and ammonium as NH₄⁺. No pH prediction or acid/base dosing is performed.
- CaSO₄ and MgSO₄ association are included; phosphate complexes, KSO₄⁻, H⁺/OH⁻ contributions, and other species are omitted. Phosphate mobility outside 25 °C is approximate.
- Iron, trace elements, chelates, acids, disinfectants and other additives are excluded. The calculated macronutrient mixture is not a complete plant feed.
- The drawing is an original schematic of the recommended separate-stock procedure, independent of the deliberately incompatible combined-stock assessment option.
Where it applies
Salt mass balances apply to the displayed pure chemical forms and a positive final volume. The nitrogen and potassium priorities cannot meet every custom profile; warnings and the achieved profile disclose the mismatch. Sulfur is comparison only.
EC is a screening estimate for 15–30 °C, ionic strength ≤0.05 mol/kg, and dilute nutrient additions in low-mineral water. The single-salt conductance reference cases do not establish an error bound for a complete mixture. Do not transfer the original paper’s natural-water accuracy claim to this reduced speciation model. Verify actual EC and pH after mixing.
Separate calcium from concentrated phosphate and sulfate. Add A and B individually into the reservoir water, mix, then top up to final volume. Stock separation is qualitative compatibility guidance, not a precipitation or mixed-salt solubility calculation. Check solubility at the coldest storage temperature, particularly above 100×. Do not infer crop suitability from an EC number.
References
- Hoagland, D. R. and Arnon, D. I. (1950). The Water-Culture Method for Growing Plants without Soil, California Agricultural Experiment Station Circular 347, revised January 1950, printed p. 31. USDA public copy: https://www.ars.usda.gov/ARSUserFiles/50820500/GPRG/Hoagland_WaterCultureMethodForGrowingPlantsWithoutSoil.pdf ; public OCR: https://archive.org/download/watercultureme3450hoag/watercultureme3450hoag_djvu.txt
- McCleskey, R. B., Nordstrom, D. K., Ryan, J. N. and Ball, J. W. (2012). A new method of calculating electrical conductivity with applications to natural waters. Geochimica et Cosmochimica Acta 77, 369–382. https://doi.org/10.1016/j.gca.2011.10.031 (equations 7–9 and Table 1).
- USGS PHREEQC, phreeqc.dat public database snapshot retrieved 2026-10-29: CaSO₄ and MgSO₄ analytical association expressions; H₂PO₄⁻ diffusion coefficient. https://github.com/usgs-coupled/phreeqc3/blob/master/database/phreeqc.dat
- Penn State Extension (updated March 18, 2024). Hydroponics Systems: Nutrient Solution Programs and Recipes. Stock compatibility and preparation guidance. https://extension.psu.edu/hydroponics-systems-nutrient-solution-programs-and-recipes
- Grey, C. V. (2017). Physicochemical Treatment Options for High-Conductivity Coal Mining Runoff. Virginia Tech MS thesis, Appendix A, Table A.2, printed p. 92 (PDF p. 100). Measured potassium nitrate specific conductance. https://vtechworks.lib.vt.edu/server/api/core/bitstreams/27c34aea-c963-462d-b237-1d0a9c974919/content
Inputs
| Input | Symbol | Unit | Default |
|---|---|---|---|
| Nutrient profile Macronutrients only. Add a suitable iron and trace-element formulation separately. | recipe | Hoagland 1 — nitrate nitrogen | |
| Recipe strength multiplier 1 = full strength; 0.5 = half strength. Scales all elemental targets. | strength | 1 | |
| Final nutrient solution volume Final volume after both stock additions, not initial water volume. | V_mix | L | 100 |
| Stock concentration multiplier Each separate stock tank is made up to final batch volume divided by this factor. Dose the full calculated A and B volumes, then top up the reservoir. | f_stock | 100 | |
| Stock tank arrangement Calcium can precipitate with phosphate or sulfate in a concentrate. The recommended plan keeps them in separate tanks. | tank_plan | Separate A and B — recommended | |
| Nutrient solution temperature Used for the uncorrected EC estimate. EC at 25 °C is also calculated for comparison with an ATC meter. | T_mix | °C | 25 |
| EC meter ppm convention A meter convention, not measured nutrient ppm or true total dissolved solids. | meter_scale | 500 scale (EC × 500) | |
| Phosphate salt The ammonium option contributes one mole of nitrogen per mole of phosphorus. | phosphate | KH₂PO₄ — monopotassium phosphate | |
| Nitrogen N Elemental ppm ≈ mg/L in dilute water, not oxide units. Enter required additions after accounting for your source water. | N_goal | mg/L | 210.105 |
| Phosphorus P Elemental ppm ≈ mg/L in dilute water, not oxide units. Enter required additions after accounting for your source water. | P_goal | mg/L | 30.973762 |
| Potassium K Elemental ppm ≈ mg/L in dilute water, not oxide units. Enter required additions after accounting for your source water. | K_goal | mg/L | 234.5898 |
| Calcium Ca Elemental ppm ≈ mg/L in dilute water, not oxide units. Enter required additions after accounting for your source water. | Ca_goal | mg/L | 200.39 |
| Magnesium Mg Elemental ppm ≈ mg/L in dilute water, not oxide units. Enter required additions after accounting for your source water. | Mg_goal | mg/L | 48.61 |
| Sulfur S — comparison target Comparison only: sulfur follows from magnesium sulfate and potassium sulfate. Changing this target does not alter salt weights. | S_goal | mg/L | 64.12 |
Results
With the default inputs above, the calc gives:
| Result | Value |
|---|---|
| Estimated EC at 25 °C | 2.202 mS/cm |
| Estimated EC at solution temperature | 2.202 mS/cm |
| Total pure salts for this batch | 231.53 g |
| Make each stock tank up to | 1 L |
| Stock dose per tank, per final liter | 10 mL |
| Largest elemental target mismatch | 0 mg/L |
| Estimated meter ppm (selected scale) | 1,101 |
Checked against sources
Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).
Hoagland and Arnon 1950 — Solution 1
Source: Hoagland and Arnon (1950), revised Circular 347, printed p. 31: molar stock aliquots of 1, 5, 5 and 2 mL per final L give phosphate, KNO₃, calcium nitrate and MgSO₄ concentrations of 1, 5, 5 and 2 mmol/L. Benchmarks the inverse recipe from elemental targets; it does not validate EC.
Inputs: the default inputs above.
| Result | Source | This calc |
|---|---|---|
| Calcium nitrate recipe in mmol/L | 5 mmol/L | 5 mmol/L |
| Potassium nitrate recipe in mmol/L | 5 mmol/L | 5 mmol/L |
| Phosphate salt recipe in mmol/L | 1 mmol/L | 1 mmol/L |
| Magnesium sulfate recipe in mmol/L | 2 mmol/L | 2 mmol/L |
Hoagland and Arnon 1950 — Solution 2
Source: Hoagland and Arnon (1950), revised Circular 347, printed p. 31, Solution 2: NH₄H₂PO₄, KNO₃, Ca(NO₃)₂ and MgSO₄ molar stocks at 1, 6, 4 and 2 mL/L. Independent published recipe; not an EC measurement.
Inputs: Nutrient profile = Hoagland 2 — nitrate + ammonium; the others as above.
| Result | Source | This calc |
|---|---|---|
| Calcium nitrate recipe in mmol/L | 4 mmol/L | 4 mmol/L |
| Potassium nitrate recipe in mmol/L | 6 mmol/L | 6 mmol/L |
| Phosphate salt recipe in mmol/L | 1 mmol/L | 1 mmol/L |
| Magnesium sulfate recipe in mmol/L | 2 mmol/L | 2 mmol/L |
| Ammonium contributed by phosphate | 0.001 mol/L | 0.001 mol/L |
Measured specific conductance — 1 mmol/kg KNO₃
Source: C. V. Grey (2017), Physicochemical Treatment Options for High-Conductivity Coal Mining Runoff, Table A.2, printed p. 92 (PDF p. 100). First SC column is measured: 146.7 µS/cm at nominal 0.001 mol/kg KNO₃; compare 25 °C specific conductance, not the uncorrected EC at the recorded 20.2 °C. A 5% tolerance covers dilute molarity≈molality and empirical model/measurement differences. Published calculated SC (133.7) is not used as the reference.
Inputs: Nutrient profile = Custom elemental targets; Nitrogen N = 14.007 mg/L; Phosphorus P = 0 mg/L; Potassium K = 39.098 mg/L; Calcium Ca = 0 mg/L; Magnesium Mg = 0 mg/L; Sulfur S — comparison target = 0 mg/L; Nutrient solution temperature = 20.2 °C; the others as above.
| Result | Source | This calc |
|---|---|---|
| Estimated EC at 25 °C | 0.1467 ± 0.0074 mS/cm | 0.1429 mS/cm |
Measured specific conductance — 10 mmol/kg KNO₃
Source: Grey (2017), Table A.2, printed p. 92: measured SC is 1361 µS/cm for nominal 0.01 mol/kg KNO₃. Compare EC standardized at 25 °C. Tolerance 5%; validation concerns this single-salt dilute limit and does not establish accuracy for a full nutrient mixture.
Inputs: Nutrient profile = Custom elemental targets; Nitrogen N = 140.1 mg/L; Phosphorus P = 0 mg/L; Potassium K = 391 mg/L; Calcium Ca = 0 mg/L; Magnesium Mg = 0 mg/L; Sulfur S — comparison target = 0 mg/L; Nutrient solution temperature = 20.1 °C; the others as above.
| Result | Source | This calc |
|---|---|---|
| Estimated EC at 25 °C | 1.361 ± 0.0681 mS/cm | 1.377 mS/cm |
Published magnesium-omission recipe — potassium sulfate branch
Source: Hoagland and Arnon (1950), revised Circular 347, printed p. 32, magnesium-omission demonstration recipe: 4 mL calcium nitrate, 6 mL potassium nitrate, 1 mL KH₂PO₄ from 1 M stocks and 3 mL K₂SO₄ from a 0.5 M stock per liter. This verifies the potassium sulfate allocation branch; the omission solution is a laboratory benchmark, not a recommended feed.
Inputs: Nutrient profile = Custom elemental targets; Nitrogen N = 196.1 mg/L; Potassium K = 391 mg/L; Calcium Ca = 160.3 mg/L; Magnesium Mg = 0 mg/L; Sulfur S — comparison target = 48.09 mg/L; the others as above.
| Result | Source | This calc |
|---|---|---|
| Calcium nitrate recipe in mmol/L | 4 mmol/L | 4 mmol/L |
| Potassium nitrate recipe in mmol/L | 6 mmol/L | 6 mmol/L |
| Phosphate salt recipe in mmol/L | 1 mmol/L | 1 mmol/L |
| Magnesium sulfate recipe in mmol/L | 0 mmol/L | 0 mmol/L |
| Potassium sulfate recipe in mmol/L | 1.5 mmol/L | 1.5 mmol/L |







Responses