Drinking-Water Treatment, PFAS/VOC Adsorption & Mass Transfer
Granular Activated Carbon (GAC) EBCT & Bed-Life Formula
Calculate Granular Activated Carbon Empty Bed Contact Time EBCT (min), Superficial Hydraulic Loading Rate (m/hr), Daily Carbon Usage Rate CUR (kg/d), and Days to Breakthrough.
EBCT uses GROSS unpacked bed volume (V_bed / Q)—never multiply by bed void porosity!
In drinking-water PFAS, pesticide, and VOC adsorption columns, Empty Bed Contact Time (EBCT = Carbon_Bed_Volume_m3 * 60 / Flow_m3_hr, typically 10–20 minutes for PFAS/VOCs) is defined by convention on the EMPTY vessel volume occupied by the GAC bed—multiplying by 0.40 bed porosity yields true interstitial pore residence time (~6 min), NOT regulatory EBCT! Meanwhile, Carbon Usage Rate CUR (kg GAC exhausted per day) equals Daily_Contaminant_Removed_kg / Dynamic_Solid_Capacity_q (where q in mg contaminant / g GAC = kg / 1,000 kg), setting Carbon Changeout Bed Life = Installed_GAC_Mass_kg / CUR_kg_d!
Verify on a Municipal PFAS/VOC Pressure Contactor—Water_Flow Q = 120.0 m³/hr (2.0 m³/min, B2), Carbon_Bed_Volume = 30.0 m³ (B3 -> EBCT = 30 / 2.0 = 15.00 min in E2), Vessel_Cross_Section_Area = 10.0 m² (3.0 m bed depth, B4 -> Hydraulic Loading Rate = 120 / 10 = 12.00 m/hr in E3), Influent_VOC_Conc = 500 µg/L (0.50 g/m³ -> 1.44 kg/d mass load, B5), and Dynamic_Capacity q = 20.0 mg/g (0.020 kg/kg) at GAC bulk density 480 kg/m³ (14,400 kg bed mass, B6): Carbon Usage Rate is 1.44 / 0.020 = 72.00 kg GAC/day (E4), yielding a 14,400 / 72 = 200.00-Day Bed Life to Breakthrough (E5)!
| GAC Adsorber Design KPI (120 m³/hr, 30 m³ Bed, 10 m² Vessel, 500 µg/L, q = 20 mg/g) | Formula | Verified Output |
|---|---|---|
| Empty Bed Contact Time EBCT (min) | (Bed_Volume_m3 * 60) / Flow_m3_hr | 15.00 min |
| Hydraulic Loading Rate HLR (m/hr) | Flow_m3_hr / Vessel_Area_m2 | 12.00 m/hr |
| Carbon Usage Rate CUR (kg GAC/d) | (Flow * 24 * Cin_ug_L / 10^6) / (q_mg_g / 1000) | 72.00 kg/d (144.00 @ q = 10) |
| Bed Life to Breakthrough (days) | (Bed_Volume_m3 * 480) / CUR_kg_d | 200.00 days (100.00 @ q = 10) |
GAC Empty Bed Contact Time & Breakthrough Bed-Life Formula
Validate Flow > 0, Bed_Volume > 0, Vessel_Area > 0, Influent_ug_L > 0, and Dynamic_Capacity_mg_g > 0!
=LET(q_hr, B2, vl_b, B3, ar_v, B4, c_ug, B5, q_cp, B6, IF(OR(q_hr <= 0, vl_b <= 0, ar_v <= 0, c_ug <= 0, q_cp <= 0), "Invalid GAC Adsorber Input", LET(ld_k, q_hr * 24 * c_ug / 1000000, cu_r, ld_k / (q_cp / 1000), ROUND((vl_b * 480) / cu_r, 2))))NOM Fouling Capacity-Halving Check (Set Dynamic Capacity q = 10.0 mg/g)
Halve Dynamic_Capacity B6 from 20.0 mg/g to 10.0 mg/g due to competitive Natural Organic Matter (NOM) pore blockage: Carbon Usage Rate E4 doubles to 144.00 kg/d and Bed Life to Breakthrough E5 halves from 200.00 days to 100.00 days!
=IF(ISTEXT(E5), E5, ROUND((B3 * 60) / B2, 2))Try the example
Use the original values or change them to test your understanding.