Flood Frequency Analysis Calculator (Gumbel, Log-Pearson III, Normal & Log-normal)

Paste annual maximum floods and get the 2- to 1000-year design floods from four distributions side by side, Gumbel confidence limits, a Gumbel probability plot with your data, a goodness-of-fit ranking, the return period of any given flood, and the full step-by-step working. Engines verified against SciPy.

Gumbel (2 methods)Log-Pearson IIIConfidence limitsProbability plotRisk calculator
By Bimal Ghimire (PhD researcher, hydrology & remote sensing) · Runs in your browser; data never leaves your device.

Flood Frequency Calculator

Try an example (synthetic data)
Use only the largest flood of each year. Paste from Excel works.
Distributions to show

Risk of Exceedance Calculator

The probability that a T-year flood is equalled or exceeded at least once during a design life of n years is:

$$R = 1-\left(1-\frac{1}{T}\right)^n$$
Risk R
–
Required return period for that risk over n years
–

A bridge with a 50-year life designed for the 100-year flood still has about a 39% chance of seeing it.

What is Flood Frequency Analysis?

Flood frequency analysis (FFA) fits a probability distribution to observed floods so we can estimate floods larger than any in the record, for example the 100-year flood used to size bridges, culverts, levees and spillways, or to map floodplains. The usual input is the annual maximum series: the largest instantaneous peak discharge in each year at a gauging station.

Almost every method uses Chow's (1951) general frequency formula:

General frequency equation
$$x_T=\bar x + K_T\,s$$
\(\bar x\), \(s\) = mean and standard deviation of the series (or of its logarithms); \(K_T\) = frequency factor, which depends on the distribution, the return period T and, for three-parameter distributions, the skew.

The data must be independent, homogeneous and stationary: no dams built mid-record, no major land-use change, no climate trend. Test stationarity with the Mann-Kendall trend test before fitting.

Return Period and Annual Exceedance Probability

Return period TAEP = 1/TGumbel reduced variate yGumbel K (n → ∞)Risk in 30 years

Gumbel's Method

Gumbel (1941, 1958) showed that the largest of many independent values tends toward the Extreme Value Type I distribution, \(F(x)=\exp[-e^{-(x-u)/\alpha}]\). Two forms of the frequency factor are in common use:

Infinite-sample frequency factor (Chow et al. 1988, method of moments)
$$K_T=-\frac{\sqrt6}{\pi}\left[0.5772+\ln\!\left(\ln\frac{T}{T-1}\right)\right]$$
Gumbel's finite-sample method (common in South Asian textbooks)
$$y_T=-\ln\!\left(\ln\frac{T}{T-1}\right),\qquad K_T=\frac{y_T-\bar y_n}{S_n},\qquad x_T=\bar x+K_T\,s_{n-1}$$
\(\bar y_n\) and \(S_n\) are the mean and standard deviation of the reduced variates of the plotting positions; for n = 10, 20, 30, 50, 100 they are 0.4952/0.9496, 0.5236/1.0628, 0.5362/1.1124, 0.5485/1.1607, 0.5600/1.2065. The calculator computes them exactly for any n.
Confidence limits
$$x_{1,2}=x_T\pm f(c)\,S_e,\qquad S_e=b\,\frac{s}{\sqrt n},\qquad b=\sqrt{1+1.3K_T+1.1K_T^2}$$
f(c) is the standard normal value for the confidence level (1.645 for 90%, 1.96 for 95%).

Note that K2 = −0.164: the 2-year flood is slightly below the mean, because the Gumbel distribution is positively skewed (fixed skew 1.14).

Log-Pearson Type III (Bulletin 17B / 17C)

  1. Take logarithms: \(y_i=\log_{10}x_i\).
  2. Compute \(\bar y\), \(s_y\) and the skew \(C_s=\dfrac{n\sum(y_i-\bar y)^3}{(n-1)(n-2)s_y^3}\).
  3. Find the Pearson III frequency factor \(K_T(C_s)\) (from tables, or exactly from the gamma distribution as this calculator does).
  4. \(\log x_T=\bar y+K_T s_y\), so \(x_T=10^{\bar y+K_T s_y}\).
What this calculator does not do: official US flood studies follow Bulletin 17C (England et al. 2019): Expected Moments Algorithm, historical and censored floods, the Multiple Grubbs-Beck low-outlier test, and weighting the station skew with a regional skew. This tool uses station skew only (method of moments), which is what most textbooks teach. For regulatory work, use USGS PeakFQ.

Plotting Positions

Rank the floods from largest (m = 1) to smallest (m = n) and assign an empirical exceedance probability:

$$\text{Weibull: }P=\frac{m}{n+1}\qquad\text{Gringorten: }P=\frac{m-0.44}{n+0.12}\qquad T=\frac1P$$

The largest flood in 40 years plots at T = 41 years (Weibull) or about 71 years (Gringorten). That difference is one reason the visual "fit" in the tail should not drive design decisions.

Which Distribution Should You Use?

DistributionParametersTypical useCaution
Gumbel (EV1)2 (fixed skew 1.14)Rainfall and flood extremes; teaching; India/Nepal practiceUnder-predicts for heavier-tailed records
Log-Pearson III3US standard (Bulletin 17C), Australia (historically)Station skew is unstable for short records
Log-normal2Quick estimate; moderately skewed dataEquals LP3 with zero log-skew
Normal2Reference onlyFloods are rarely symmetric
GEV (not in tool)3UK (Flood Estimation Handbook uses GL), research with L-momentsShape parameter needs long or regional data

Follow your national guideline first. Without one, compare fits on the probability plot, check the fit ranking, and prefer regional information over a single short record.

Limitations

Short records

A 100-year estimate from 20 years has a wide confidence band. Look at it before quoting a single number.

Non-stationarity

Urbanisation, dams and climate change break the "same distribution every year" assumption.

Outliers and zero flows

One historical mega-flood or several zero years strongly affect skew; Bulletin 17C has procedures for both.

Rating curve errors

Large peaks are often extrapolated from the stage-discharge curve, so the biggest data points are the least certain.

Related Tools and Guides

Frequently Asked Questions

What is a 100-year flood?

A 100-year flood is the peak discharge that has a 1% chance of being equalled or exceeded in any given year (annual exceedance probability 0.01). It does not mean it happens once every 100 years: over a 30-year period the chance of at least one such flood is 1 − 0.99³⁰ ≈ 26%.

How do you calculate flood frequency with the Gumbel method?

Compute the mean and standard deviation of the annual maximum floods. The flood for return period T is x_T = x̄ + K_T·s. With the infinite-sample frequency factor K_T = −(√6/π)[0.5772 + ln(ln(T/(T−1)))]. In Gumbel's finite-sample version, K_T = (y_T − ȳn)/Sn with y_T = −ln(ln(T/(T−1))) and ȳn, Sn depending on record length.

When should I use Log-Pearson Type III?

Log-Pearson Type III is the standard distribution for annual peak flows in the United States (Bulletin 17B/17C) and is widely used elsewhere. It fits the logarithms of the floods with three parameters (mean, standard deviation and skew), so it handles strongly skewed records better than the two-parameter Gumbel. Official US studies additionally use regional skew weighting and the Expected Moments Algorithm.

How many years of data are needed for flood frequency analysis?

At least about 10 years for a rough estimate and preferably 25–30 years or more. A common rule of thumb is not to extrapolate beyond about twice the record length without additional information such as regional analysis or historical floods; 100-year estimates from 20 years of data carry large uncertainty.

What is the difference between annual maximum and partial duration series?

The annual maximum series (AMS) takes the single largest flood in each year. The partial duration (peaks-over-threshold) series takes all independent floods above a threshold, so a wet year can contribute several. AMS is simpler and is what this calculator uses; for return periods below about 10 years the two give noticeably different answers.

Which plotting position formula should I use?

The Weibull formula P = m/(n+1) is the most common in textbooks and is unbiased for exceedance probability. Gringorten P = (m − 0.44)/(n + 0.12) is preferred for Gumbel probability plots. Plotting positions are used to display data and check fit; the design flood comes from the fitted distribution.

References

Chow, V. T. (1951). A general formula for hydrologic frequency analysis. Transactions, American Geophysical Union, 32(2), 231–237.

Gumbel, E. J. (1958). Statistics of Extremes. Columbia University Press, New York.

Chow, V. T., Maidment, D. R., & Mays, L. W. (1988). Applied Hydrology, Chapter 12. McGraw-Hill, New York.

Interagency Advisory Committee on Water Data (1982). Guidelines for Determining Flood Flow Frequency, Bulletin 17B. USGS, Reston, VA.

England, J. F., Jr., et al. (2019). Guidelines for Determining Flood Flow Frequency—Bulletin 17C. USGS Techniques and Methods, book 4, chap. B5.

Gringorten, I. I. (1963). A plotting rule for extreme probability paper. Journal of Geophysical Research, 68(3), 813–814.

Subramanya, K. Engineering Hydrology, Chapter 7 (Floods). McGraw-Hill Education, New Delhi.

Hosking, J. R. M., & Wallis, J. R. (1997). Regional Frequency Analysis: An Approach Based on L-Moments. Cambridge University Press.