Perfect your brew with precise measurements for any brewing method.
Drip / Pour Over (1:15 – Strong)
Standard / Golden Ratio (1:16)
Mild Pour Over (1:17 – Lighter)
French Press (1:12 – Bold)
Espresso (1:2 – Concentrated)
Cold Brew (1:8 – Concentrate)
Custom Ratio
Your Brewing Guide
How to Use the Coffee Ratio Calculator
Achieving the perfect cup of coffee is a science of extraction. The ratio between your coffee grounds and the water used determines the strength and flavor profile of your brew. This calculator helps you determine exactly how much water or coffee you need based on your preferred brewing method.
Understanding the "Golden Ratio"
The Specialty Coffee Association (SCA) suggests a "Golden Ratio" of 1:18 (1 gram of coffee for every 18 grams of water). However, most home brewers prefer a slightly stronger cup, typically ranging between 1:15 and 1:17.
Method
Ratio Range
Resulting Profile
Espresso
1:1 to 1:3
Intense, Syrupy, Heavy Body
French Press
1:12 to 1:15
Bold, Full-bodied, Textured
Pour Over (V60/Chemex)
1:15 to 1:17
Clean, Balanced, Nuanced
Cold Brew
1:4 to 1:8
Concentrated, Smooth, Low Acid
Real-World Examples
Example 1 (Pour Over): If you want to brew a standard 500ml carafe of coffee at a 1:16 ratio, you would need 31.25 grams of coffee grounds.
Example 2 (French Press): For a small 350ml French Press at a 1:12 ratio, you should use approximately 29 grams of coarsely ground coffee.
Example 3 (AeroPress): Many AeroPress recipes use a 1:15 ratio. For 200ml of water, use 13.3 grams of coffee.
Pro Tips for Better Coffee
1. Use a Scale: Volumetric measurements (scoops and cups) are notoriously inaccurate because coffee bean density varies by roast level. A digital scale ensures consistency every single morning.
2. Water Temperature: Aim for water between 195°F and 205°F (90°C to 96°C). Boiling water can scorch the grounds, leading to bitterness.
3. Grind Size Matters: Even with the perfect ratio, the wrong grind size can ruin the cup. Fine grinds for espresso, medium for drip, and coarse for French press/cold brew.
function updateRatioPreset() {
var preset = document.getElementById("brewMethod").value;
if (preset !== "custom") {
document.getElementById("customRatio").value = preset;
}
}
function calculateByCoffee() {
var coffee = parseFloat(document.getElementById("coffeeGrams").value);
var ratio = parseFloat(document.getElementById("customRatio").value);
var resultDiv = document.getElementById("coffeeResult");
var textDiv = document.getElementById("resultText");
if (isNaN(coffee) || coffee <= 0) {
alert("Please enter a valid amount of coffee grounds.");
return;
}
if (isNaN(ratio) || ratio <= 0) {
alert("Please enter a valid ratio.");
return;
}
var waterNeeded = coffee * ratio;
var yieldEstimate = waterNeeded * 0.9; // Roughly 10% water retention in grounds
resultDiv.style.display = "block";
textDiv.innerHTML = "To brew " + coffee + "g of coffee at a 1:" + ratio + " ratio:" +
"• Use " + waterNeeded.toFixed(1) + "ml of water." +
"• Estimated beverage yield: ~" + yieldEstimate.toFixed(0) + "ml." +
"• Method: " + getMethodName(ratio);
}
function calculateByWater() {
var water = parseFloat(document.getElementById("waterML").value);
var ratio = parseFloat(document.getElementById("customRatio").value);
var resultDiv = document.getElementById("coffeeResult");
var textDiv = document.getElementById("resultText");
if (isNaN(water) || water <= 0) {
alert("Please enter a valid amount of water.");
return;
}
if (isNaN(ratio) || ratio <= 0) {
alert("Please enter a valid ratio.");
return;
}
var coffeeNeeded = water / ratio;
var yieldEstimate = water * 0.9;
resultDiv.style.display = "block";
textDiv.innerHTML = "To use " + water + "ml of water at a 1:" + ratio + " ratio:" +
"• Use " + coffeeNeeded.toFixed(1) + "g of coffee grounds." +
"• Estimated beverage yield: ~" + yieldEstimate.toFixed(0) + "ml." +
"• Method: " + getMethodName(ratio);
}
function getMethodName(ratio) {
if (ratio <= 3) return "Espresso/Ristretto Style";
if (ratio <= 10) return "Cold Brew Concentrate / Aeropress Style";
if (ratio <= 13) return "Strong Brew (French Press / Moka Pot)";
if (ratio <= 16) return "Balanced (Standard Drip / Pour Over)";
return "Light/Mellow (SCA Golden Cup)";
}