Kirchhoff's Voltage Law (KVL): Complete Guide

What Kirchhoff's Voltage Law Actually Says

Kirchhoff's Voltage Law (KVL) states that the algebraic sum of the voltages around any closed loop in a circuit is zero. Formally, if you walk around a closed path and add up every potential difference you cross, returning to your starting node, the total must vanish:

k=1nVk=0\sum_{k=1}^{n} V_k = 0

The reason is deeper than circuit theory. Electric potential is a conservative quantity: the work done moving a unit charge between two points depends only on those endpoints, not on the path taken. If you start at a node and return to the same node, you must be back at the same potential, so the net change is exactly zero. KVL is therefore a direct consequence of energy conservation, and it holds for any lumped circuit regardless of how complicated the elements inside the loop are. It is the companion of Kirchhoff's Current Law, which expresses conservation of charge at a node.

One subtlety worth stating early: KVL applies to lumped circuits where magnetic fields are confined to components. In the presence of a changing magnetic flux threading the loop itself (a transformer or inductive coupling between loops), the loop voltage sum equals the induced EMF rather than zero. For the everyday RLC and amplifier circuits you analyze, we treat each inductor's terminal voltage as an ordinary element voltage and KVL sums to zero cleanly.

Sign Conventions: The Part Everyone Gets Wrong

KVL is an algebraic sum, which means signs matter more than magnitudes. The single most reliable method is to adopt a consistent rule and never deviate from it within a problem. The convention I recommend: choose a direction to traverse the loop (say clockwise), and when you enter a component at its marked + terminal, write that voltage as a rise (positive); when you enter at the terminal, write it as a drop (negative). Equivalently, many textbooks sum the drops and set them equal to the sum of the rises, which is the same statement rearranged.

For a resistor, the passive sign convention ties voltage polarity to the assumed current direction: current enters the terminal you label +. If the assumed mesh current ii flows through resistor RR in the same direction you are traversing, you cross a drop of iRiR. The table below summarizes exactly what term to write for each element as you walk the loop.

Element crossed (in traversal direction)Term added to KVL sum
Resistor, current with traversaliR-iR (voltage drop)
Resistor, current against traversal+iR+iR (voltage rise)
Source, − to + (rise)+Vs+V_s
Source, + to − (drop)Vs-V_s

Notice that the same physical source contributes +Vs+V_s or Vs-V_s depending purely on which way you walk through it. This is why mixing conventions mid-problem produces wrong answers that are often off by exactly a sign or a factor of two, rather than being wildly wrong, which makes them hard to spot.

A Fully Worked Two-Mesh Example

Consider a circuit with a 12 V source feeding two meshes. Resistor R1=2 ΩR_1 = 2\ \Omega is the branch shared between both meshes, R2=4 ΩR_2 = 4\ \Omega sits in the left mesh, and R3=6 ΩR_3 = 6\ \Omega sits in the right mesh, where the right mesh also contains a 6 V source opposing the current. Define clockwise mesh currents i1i_1 (left) and i2i_2 (right). Writing KVL around the left mesh in the clockwise direction:

12i1R2(i1i2)R1=012 - i_1 R_2 - (i_1 - i_2) R_1 = 0

and around the right mesh, where the shared resistor sees the difference (i2i1)(i_2 - i_1):

(i2i1)R1i2R36=0-(i_2 - i_1) R_1 - i_2 R_3 - 6 = 0

Substituting numbers, the left mesh gives 124i12(i1i2)=012 - 4 i_1 - 2(i_1 - i_2) = 0, i.e. 6i12i2=126 i_1 - 2 i_2 = 12. The right mesh gives 2(i2i1)6i26=0-2(i_2 - i_1) - 6 i_2 - 6 = 0, i.e. 2i18i2=62 i_1 - 8 i_2 = 6. Solving the pair: from the first equation, i1=2+13i2i_1 = 2 + \tfrac{1}{3} i_2. Substituting into the second, 2(2+13i2)8i2=62(2 + \tfrac{1}{3} i_2) - 8 i_2 = 6, so 4223i2=64 - \tfrac{22}{3} i_2 = 6, giving i2=3110.273 Ai_2 = -\tfrac{3}{11} \approx -0.273\ \text{A} and i1=20.0911.909 Ai_1 = 2 - 0.091 \approx 1.909\ \text{A}.

The negative value of i2i_2 simply means the actual current in the right mesh flows counterclockwise, opposite our assumption. Both the magnitude and the sign are physically meaningful. As a check, the shared-resistor current is i1i2=1.909(0.273)=2.182 Ai_1 - i_2 = 1.909 - (-0.273) = 2.182\ \text{A}, and the power delivered by the 12 V source is 12×1.909=22.9 W12 \times 1.909 = 22.9\ \text{W}, which a full power balance would confirm equals the total power dissipated plus absorbed elsewhere. This loop-by-loop application of KVL is exactly the foundation of mesh analysis.

KVL With Reactive Elements

KVL is not limited to resistive circuits. In the phasor or ss-domain, voltages still sum to zero around a loop, but now each term is complex. For a series RLC loop driven by V(s)V(s) carrying current I(s)I(s):

V(s)=I(s)(R+sL+1sC)V(s) = I(s)\left( R + sL + \frac{1}{sC} \right)

Each parenthesized term is an element voltage, and their sum equals the source voltage. This is just KVL with impedances substituted for resistances, a point developed in Ohm's Law in the s-Domain.

Counting Independent Loops

Not every loop you can trace yields a new, independent equation. For a connected planar circuit with bb branches and nn nodes, the number of independent KVL equations equals bn+1b - n + 1, which is exactly the number of meshes (the "window panes") in a planar drawing. Writing KVL around a larger loop that encircles two meshes gives an equation that is just the sum of the two mesh equations, contributing nothing new. This is why mesh analysis chooses the meshes specifically: they form a minimal, independent set. If you ever find your simultaneous equations collapsing to 0=00 = 0, you have almost certainly written one loop equation that was a linear combination of the others.

The companion count for KCL is n1n - 1 independent node equations. Adding the two, (n1)+(bn+1)=b(n-1) + (b-n+1) = b, you get exactly bb independent equations, one per branch, which is precisely what you need to solve for the bb branch currents (or voltages). This bookkeeping is the quiet engine behind every systematic analysis method.

Common Mistakes

  • Switching traversal direction mid-loop. Pick clockwise (or counterclockwise) and commit. Reversing direction halfway flips the sign of every subsequent term and corrupts the equation.
  • Forgetting that a shared resistor carries the difference of mesh currents. In the example above, R1R_1 sees i1i2i_1 - i_2 from the left mesh's perspective and i2i1i_2 - i_1 from the right's. Using a single mesh current for a shared branch is the most common two-mesh error.
  • Treating a negative result as an arithmetic error. A negative current or voltage just means your assumed reference was backwards. Keep the sign; do not "fix" it by flipping it.
  • Counting a source's voltage twice. Each element is crossed exactly once per loop. Students sometimes add a source's drop and then also add it as a rise on the same pass.
  • Ignoring the polarity markings on dependent sources. A controlled source's sign in KVL depends on its defined polarity, which is fixed independently of your traversal direction until the moment you cross it.

Related Tutorials

Related Tutorials

Fundamentals

Kirchhoff's Current Law (KCL): Complete Guide

Master KCL: conservation of charge, node equations, supernodes, and a step-by-step 4-node worked example.

Fundamentals

Ohm's Law and Circuit Elements in the s-Domain

Review Ohm's law, understand impedance of R, L, and C in the Laplace domain, and see why s-domain analysis simplifies circuit solving.

Fundamentals

Voltage Divider Equation: Derivation and Applications

Derive the voltage divider from KVL and Ohm's law, understand loading effects, and explore biasing and sensing applications.

Back to All Tutorials