Simplify Your Workflow: Search MiniWebtool.
Add Extension
Home Page > Math > Advanced Math Operations > Network Flow Calculator (Max Flow)

Network Flow Calculator (Max Flow)

Compute the maximum flow from source to sink in a capacitated directed network using the Ford-Fulkerson method (Edmonds-Karp). Animates every augmenting path, shows residual capacities, saturated edges, and the min-cut partition that proves optimality.

Network Flow Calculator (Max Flow)
Edge format: A -> B : 10 (arrow plus capacity), or A, B, 10. Matrix format: one row per line, C[i][j] is the capacity of edge i → j (use 0 for no edge). Diagonal must be 0.
Comma- or space-separated labels, one per matrix row. Defaults to S, A, B, …, T.

Embed Network Flow Calculator (Max Flow) Widget

About Network Flow Calculator (Max Flow)

The Network Flow Calculator computes the maximum flow from a chosen source s to a chosen sink t in any capacitated directed network. Under the hood it runs the Ford-Fulkerson method with breadth-first augmenting paths (the Edmonds-Karp algorithm), then records every path it found so you can replay the entire decision process one iteration at a time. The result page also surfaces the min-cut — the bottleneck partition that proves your flow value is truly optimal.

What Is the Maximum Flow Problem?

A flow network is a directed graph G = (V, E) together with a capacity function c: E → ℝ≥0. Two vertices are distinguished: the source s (where flow originates) and the sink t (where it is consumed). A flow f is any assignment f(u, v) ≥ 0 on edges that obeys:

Capacity: 0 ≤ f(u, v) ≤ c(u, v) for every edge (u, v) Conservation: Σ f(w, v) = Σ f(v, w) for every v ∈ V \ {s, t} Flow value: |f| = Σ f(s, w) − Σ f(w, s) (net flow leaving s)

The maximum flow problem asks for the flow f that maximises |f|. Intuitively: if the edges were water pipes with the given capacities, how many litres per second can you ship from s to t?

How the Algorithm Works — Ford-Fulkerson with BFS

The algorithm maintains a residual graph alongside the current flow. For every edge (u, v) with capacity c and current flow f, the residual graph contains:

At each iteration it performs a breadth-first search from s to t over the residual graph. If a path is found, the smallest edge capacity on the path — the bottleneck — is added to flow on every forward edge and subtracted on every reverse edge along the path. This is called an augmenting path. When BFS can no longer reach t, the current flow is optimal.

while there exists an augmenting path P from s to t in the residual graph: b ← min c_residual(u, v) over edges (u, v) in P push b units of flow along P // updates residual + flow return total flow |f|

Using BFS (rather than arbitrary path-finding) turns Ford-Fulkerson into Edmonds-Karp, with a guaranteed running time of O(V · E²). It also guarantees termination on irrational capacities, which plain Ford-Fulkerson does not.

The Max-Flow Min-Cut Theorem

A cut is a partition of the vertices into two sets (S, T) with s ∈ S and t ∈ T. Its capacity is the sum of capacities of edges going from S to T:

cap(S, T) = Σ c(u, v) for u ∈ S, v ∈ T

The max-flow min-cut theorem (Ford & Fulkerson, 1956) states:

maximum flow value = minimum cut capacity

This tool finds the min-cut automatically. After Edmonds-Karp terminates, it runs one more BFS from s on the residual graph; the vertices reached form S, the rest form T, and every edge crossing S → T in the original graph is saturated. Their capacities sum to exactly the max-flow value — visible in the hero result as "Min-cut capacity ✓ confirms optimality".

Features Built for Learning

Input Formats

1. Edge list with capacities

One edge per line. The arrow form is most readable but several alternatives work:

S -> A : 10 S -> B : 13 A -> B : 10 B -> A : 4 B -> T : 14

Also accepted: A, B, 10 · A B 10 · A -> B , 10. Multiple edges between the same pair are summed.

2. Capacity matrix

One row per line, values separated by spaces or commas. Entry C[i][j] is the capacity of the edge from vertex i to vertex j. Use 0 for "no edge". The matrix must be square and the diagonal must be 0 (no self-loops).

S A B C D T S [ 0 10 0 10 0 0 ] A [ 0 0 4 2 8 0 ] B [ 0 0 0 0 0 10 ] C [ 0 0 0 0 9 0 ] D [ 0 0 6 0 0 10 ] T [ 0 0 0 0 0 0 ]

Enter matching vertex labels in the Matrix labels field (comma- or space-separated). If omitted, labels default to S, A, B, …, T.

Applications of Max Flow

DomainHow max flow is used
Transportation & logisticsHow much cargo can a rail/road/pipeline network move per day from origin to destination?
Bipartite matchingAssigning jobs to workers, students to projects. Unit-capacity max flow gives the maximum matching.
Image segmentationBoykov–Kolmogorov min-cut in computer vision separates foreground from background pixels.
Network reliabilityMin-cut identifies the weakest links whose failure disconnects the network.
Project schedulingClosure problems and selection problems reduce to min-cut.
Baseball eliminationDetermines whether a team is mathematically eliminated from a league title.

Worked Example

The "Textbook" quick-example encodes a 6-node network with source S and sink T. Running Edmonds-Karp yields four augmenting paths:

  1. S → A → B → T with bottleneck 4 (edge A-B is the limiter). Running total: 4.
  2. S → A → D → T with bottleneck 6. Running total: 10.
  3. S → C → D → T with bottleneck 4 (edge D-T is now the limiter, only 4 left). Running total: 14.
  4. S → C → D → B → T with bottleneck 5. Running total: 19.

The algorithm stops — no more augmenting paths exist. The min-cut is (S = {S, C}, T = {A, B, D, T}) with crossing edges S → A (capacity 10) and C → D (capacity 9), summing to 19 — exactly the max flow value.

How to Use This Calculator

  1. Choose input format using the tabs — edge list (recommended) or capacity matrix.
  2. Enter your network. You can start from a quick example and modify it. For matrix input, also supply labels if you want names other than S, A, B, …, T.
  3. Specify source and sink (or leave blank to auto-detect S and T).
  4. Click Compute Max Flow. The result page shows the max flow value, min-cut partition, a layered graph visualisation, every augmenting path, an edge utilisation table, and three matrices (capacity, flow, residual).
  5. Play the animation beneath the graph to replay the algorithm's decisions. Click any augmenting-path step to jump directly to it.

Limits

Frequently Asked Questions

What is the maximum flow problem?

Given a directed network where each edge has a non-negative capacity, the maximum flow problem asks: how much flow can be pushed from a designated source vertex s to a designated sink vertex t, subject to the rules that flow on each edge cannot exceed its capacity and flow entering every non-source, non-sink vertex must equal the flow leaving it? The answer is called the max flow value.

What is the Ford-Fulkerson method?

Ford-Fulkerson is a general technique for computing max flow. It repeatedly finds an augmenting path from source to sink in the residual graph and pushes as much flow as possible along that path (the bottleneck capacity), then updates the residual graph. The procedure terminates when no augmenting path exists. When implemented with breadth-first search for path selection, it is called Edmonds-Karp and runs in O(V · E²) time.

What is the min-cut of a flow network?

A cut is a partition of the vertices into two sets S and T such that the source is in S and the sink is in T. The capacity of the cut is the sum of capacities of edges from S to T. A min-cut is a cut of minimum capacity. The famous max-flow min-cut theorem proves that the maximum flow value always equals the minimum cut capacity, so finding one gives you the other for free.

What is the residual graph?

The residual graph tracks how much more flow can still be pushed on each edge. For every original edge (u, v) with capacity c and current flow f, the residual graph contains a forward edge (u, v) with capacity c minus f (remaining capacity) and a reverse edge (v, u) with capacity f (cancellable flow). An augmenting path uses edges of the residual graph, allowing the algorithm to undo earlier decisions.

Why does the tool use BFS for augmenting paths?

Choosing augmenting paths with breadth-first search (Edmonds-Karp) guarantees polynomial-time termination regardless of the edge capacities. Plain Ford-Fulkerson with an arbitrary path-finding strategy can loop for an exponential number of iterations on pathological inputs, and on irrational capacities it may not terminate at all. BFS also produces shortest augmenting paths, which are easier to read and reason about.

What does a saturated edge mean?

An edge is saturated when its flow equals its capacity, so no additional flow can be pushed on it. Saturated edges are bottlenecks of the network, and every min-cut consists entirely of saturated edges from the S-side to the T-side of the cut. The tool highlights saturated edges in red so you can see the bottleneck structure at a glance.

Further Reading

Reference this content, page, or tool as:

"Network Flow Calculator (Max Flow)" at https://MiniWebtool.com/network-flow-calculator-max-flow/ from MiniWebtool, https://MiniWebtool.com/

by miniwebtool team. Updated: Apr 22, 2026

You can also try our AI Math Solver GPT to solve your math problems through natural language question and answer.

Related MiniWebtools:

Advanced Math Operations:

Top & Updated:

Random PickerRandom Name PickerLine CounterBatting Average CalculatorRelative Standard Deviation CalculatorFPS ConverterSort NumbersERA CalculatorMAC Address GeneratorInstagram User ID LookupRemove SpacesWord to Phone Number ConverterMAC Address LookupFacebook User ID LookupJob FinderFeet and Inches to Cm ConverterSum CalculatorOPS CalculatorRandom Truth or Dare GeneratorPercent Off CalculatorRandom Quote GeneratorSHA256 Hash GeneratorSquare Root (√) CalculatorDoubling Time CalculatorLog Base 10 CalculatorBitwise CalculatorVertical Jump CalculatorNumber of Digits CalculatorRoman Numerals ConverterAudio SplitterMP3 LooperSlugging Percentage CalculatorSalary Conversion CalculatorSlope and Grade CalculatorOn Base Percentage CalculatorPhone Number ExtractorSaturn Return CalculatorRandom IMEI GeneratorRandom Poker Hand GeneratorAI Text HumanizerMerge VideosNumber to Word ConverterCaffeine Overdose CalculatorCompound Growth CalculatorSun, Moon & Rising Sign Calculator 🌞🌙✨Decimal to BCD ConverterImage ResizerRandom Birthday GeneratorFirst n Digits of PiWHIP CalculatorCompare Two StringsBinary to Gray Code ConverterCm to Feet and Inches ConverterGrade CalculatorBCD to Decimal ConverterAdd Prefix and Suffix to TextRandom Movie PickerOctal CalculatorRandom Fake Address GeneratorRandom Activity GeneratorWAR CalculatorOne Rep Max (1RM) CalculatorRandom Superpower GeneratorClothing Size ConverterFile Size ConverterVideo to Image ExtractorRandom Writing Prompt GeneratorInvisible Text GeneratorText FormatterYouTube Channel StatisticsLove Compatibility CalculatorCM to Inches ConverterRemove AccentOutlier CalculatorTime Duration CalculatorPercent Growth Rate CalculatorQuotient and Remainder CalculatorRandom Integer GeneratorStair CalculatorRandom Object GeneratorDay of Year CalendarList of Prime NumbersImage SplitterWord Ladder GeneratorAI Punctuation AdderRandom Number PickerRandom Loadout GeneratorRemove Leading Trailing SpacesGray Code to Binary ConverterCryptogram GeneratorExponential Decay CalculatorBingo Card GeneratorRandom Credit Card GeneratorArc Length CalculatorModulo CalculatorAdd Text to ImageDay of the Year Calculator - What Day of the Year Is It Today?Leap Years ListConnect the Dots GeneratorEmail ExtractorURL ExtractorAI ParaphraserSHA512 Hash GeneratorVideo CompressorBinary to BCD ConverterIP Address to Hex ConverterSort Lines AlphabeticallyHex to BCD ConverterBCD to Binary ConverterLottery Number GeneratorBCD to Hex ConverterMedian CalculatorStandard Error CalculatorList RandomizerBreak Line by CharactersAverage CalculatorPVIFA CalculatorReverse VideoHypotenuse CalculatorRemove Audio from VideoActual Cash Value CalculatorScientific Notation to Decimal ConverterNumber ExtractorAngel Number CalculatorLog Base 2 CalculatorRoot Mean Square CalculatorSum of Positive Integers CalculatorSHA3-256 Hash GeneratorAI Sentence Expander📅 Date CalculatorLbs to Kg ConverterHex to Decimal ConverterRandom Group GeneratorConvolution CalculatorMAC Address AnalyzerRandom String GeneratorAmortization CalculatorMarkup CalculatorPVIF CalculatorName Number CalculatorDecimal to Hex ConverterInstagram Font GeneratorSocial Media Image Size GuideTikTok Money CalculatorTwitter/X Character CounterTwitter/X Timestamp ConverterYouTube Watch Time CalculatorTwitch Earnings CalculatorYouTube Shorts Monetization CalculatorFacebook Ad Cost CalculatorSocial Media ROI CalculatorSocial Media Post Time OptimizerSocial Media Username CheckerCTR CalculatorROAS CalculatorInfluencer ROI CalculatorForce CalculatorAcceleration CalculatorVelocity CalculatorMomentum CalculatorProjectile Motion CalculatorKinetic Energy CalculatorPotential Energy CalculatorWork and Power CalculatorDensity CalculatorPressure CalculatorIdeal Gas Law CalculatorFree Fall CalculatorTorque CalculatorHorsepower CalculatorDilution CalculatorChemical Equation BalancerStoichiometry CalculatorPercent Yield CalculatorEmpirical Formula CalculatorBoiling Point CalculatorTitration CalculatorMole/Gram/Particle ConverterIrregular Polygon Area CalculatorFrustum CalculatorTorus Calculator3D Distance CalculatorGreat Circle Distance CalculatorCircumscribed Circle (Circumcircle) CalculatorInscribed Circle (Incircle) CalculatorAngle Bisector CalculatorTangent Line to Circle CalculatorHeron's Formula CalculatorCoordinate Geometry Distance CalculatorVolume of Revolution CalculatorSurface of Revolution CalculatorParametric Curve GrapherRiemann Sum CalculatorTrapezoidal Rule CalculatorSimpson's Rule CalculatorImproper Integral CalculatorL'Hôpital's Rule CalculatorMaclaurin Series CalculatorPower Series CalculatorSeries Convergence Test CalculatorInfinite Series Sum CalculatorAverage Rate of Change CalculatorInstantaneous Rate of Change CalculatorRelated Rates SolverOptimization Calculator (Calculus)Gradient Calculator (Multivariable)Divergence CalculatorCurl CalculatorLine Integral CalculatorSurface Integral CalculatorJacobian Matrix CalculatorNewton's Method CalculatorRREF Calculator (Row Echelon Form)Matrix Inverse CalculatorMatrix Multiplication CalculatorDot Product CalculatorCross Product CalculatorVector Magnitude CalculatorUnit Vector CalculatorAngle Between Vectors CalculatorNull Space CalculatorColumn Space CalculatorCramer's Rule CalculatorMatrix Diagonalization CalculatorQR Decomposition CalculatorCholesky Decomposition CalculatorMatrix Power CalculatorCharacteristic Polynomial CalculatorBayes' Theorem CalculatorF-Test / F-Distribution CalculatorHypergeometric Distribution CalculatorNegative Binomial Distribution CalculatorGeometric Distribution CalculatorExponential Distribution CalculatorWeibull Distribution CalculatorBeta Distribution CalculatorSpearman Rank Correlation CalculatorFisher's Exact Test CalculatorContingency Table CalculatorOdds Ratio CalculatorRelative Risk CalculatorEffect Size CalculatorPermutations with Repetition CalculatorModular Exponentiation CalculatorPrimitive Root CalculatorPerfect Number CheckerAmicable Number CheckerTwin Prime FinderMersenne Prime CheckerGoldbach Conjecture VerifierMöbius Function CalculatorEgyptian Fraction CalculatorFibonacci Number CheckerDigital Root CalculatorPartition Function CalculatorBoolean Algebra SimplifierKarnaugh Map (K-Map) SolverLogic Gate SimulatorGraph Coloring CalculatorTopological Sort CalculatorAdjacency Matrix CalculatorRecurrence Relation SolverInclusion-Exclusion CalculatorLinear Programming SolverTraveling Salesman Solver (TSP)Hamiltonian Path CheckerPlanar Graph CheckerNetwork Flow Calculator (Max Flow)Stable Marriage Problem SolverFirst-Order ODE SolverSecond-Order ODE SolverDirection Field / Slope Field PlotterEuler's Method CalculatorBernoulli ODE SolverSystem of ODEs SolverGroup Theory Order CalculatorRing and Field CalculatorJordan Normal Form CalculatorMatrix Exponential CalculatorTensor Product CalculatorFast Fourier Transform (FFT) CalculatorZ-Transform CalculatorNumerical Integration CalculatorTOML to JSON ConverterJSON to CSV ConverterXML to JSON ConverterSQL to MongoDB Query ConverterCSS Flexbox PlaygroundCSS Grid GeneratorJWT GeneratorBcrypt Hash Generator / CheckerColor Code Converter (All Formats)Git Command Generator.env File GeneratorLorem Picsum / Placeholder Image GeneratorText to Binary/Hex/ASCII ConverterSyllable CounterSentence CounterParagraph CounterSpeaking Time CalculatorReading Time CalculatorWhitespace VisualizerStrikethrough Text GeneratorTorque Converter (Nm, ft-lb, kgf-cm)Data Transfer Rate ConverterFuel Efficiency ConverterAstronomical Unit ConverterRing Size ConverterPaper Size ReferenceGas Mileage CalculatorEV Range CalculatorEV Charging Time Calculator0–60 / Quarter Mile CalculatorCar Lease CalculatorVehicle Towing Capacity CalculatorExposure Triangle CalculatorCrop Factor CalculatorMegapixel to Print Size CalculatorPhoto File Size EstimatorMusic BPM TapperMusic Key TransposerVideo Bitrate CalculatorSeed Germination Rate CalculatorFertilizer Calculator (NPK)Raised Bed Soil CalculatorFrost Date CalculatorLawn Fertilizer CalculatorCompost Calculator (C:N Ratio)Solar Panel CalculatorSolar ROI CalculatorHome Energy Audit CalculatorAppliance Energy Cost CalculatorWater Usage CalculatorElectricity Generation Cost CalculatorHeat Loss CalculatorFlight Distance CalculatorTravel Budget CalculatorJet Lag CalculatorPacking List GeneratorTip Splitter (Advanced)Lease vs Buy CalculatorHourly Rate Calculator (Freelancer)Invoice Late Fee CalculatorESPP CalculatorStock Split CalculatorOptions Probability CalculatorDollar to Gold ConverterBeam Load CalculatorPipe Flow CalculatorBolt Torque CalculatorSteel Weight CalculatorGravel, Sand & Topsoil CalculatorRandom Sentence GeneratorRandom Paragraph GeneratorRandom Math Problem GeneratorRandom Bible Verse GeneratorRandom Cat/Dog Name GeneratorRandom Debate Topic GeneratorBody Recomposition CalculatorAlcohol Calorie CalculatorMedication Dosage CalculatorPace to Calories CalculatorHydration CalculatorTrain Meeting Problem SolverAge Word Problem SolverMixture Problem SolverWork Rate Problem SolverDistance-Speed-Time Triangle CalculatorCoin Word Problem SolverNumber Bonds GeneratorCarry and Borrow VisualizerTimes Tables QuizMental Math Trainer