A unity gain amp (often called a voltage follower or buffer) is an operational amplifier circuit configured to output the exact same voltage as its input, providing a voltage gain of exactly 1 while transforming the signal's impedance.

If you are new to analog design, you might look at a gain of 1 and ask: Why not just use a piece of wire? This is the most common confusion hobbyists face. People frequently confuse a unity gain amp with a standard non-inverting amplifier (where gain > 1) or assume that because it doesn't amplify voltage, it doesn't amplify anything at all. In reality, a wire has low impedance on both ends. A unity gain amp fundamentally changes the current delivery capability and isolates a fragile, high-impedance source from a heavy, low-impedance load.

What a Unity Gain Amp Actually Changes in Your Circuit

In any real circuit or installation, a unity gain amp changes the impedance profile of your signal path without altering the voltage level. It acts as an impedance transformer. It presents a massive input impedance (often >1 MΩ or even >1 TΩ depending on the op-amp) to the source, drawing virtually zero current. Simultaneously, it presents a microscopic output impedance (often < 1 Ω) to the load, capable of sourcing or sinking tens of milliamps.

Bench Rule of Thumb: If your source cannot supply the current your load demands without the voltage sagging, you don't need a voltage amplifier. You need a current buffer. That is exactly what a unity gain amp provides.

The Math: A Worked Numeric Example of Impedance Buffering

Let's look at what happens when we connect a high-impedance source directly to a low-impedance load, and how inserting a buffer fixes it.

The Setup: You have a sensor acting as a voltage source with an internal output impedance of 10 kΩ. You want to measure this signal with a meter or an ADC that has an input impedance of 1 kΩ. Your sensor is outputting a true 5.00V.

Scenario A: Direct Connection (The Wire)
When you connect them directly, you create a voltage divider. The 10 kΩ source resistance and the 1 kΩ load resistance form a divider network.

  • V_load = V_source × (R_load / (R_source + R_load))
  • V_load = 5.00V × (1,000 / (10,000 + 1,000))
  • V_load = 5.00V × (1,000 / 11,000) = 0.45V

You lost over 90% of your signal simply by connecting the load. The source couldn't supply the current the 1 kΩ load demanded.

Scenario B: Inserting a Unity Gain Amp (e.g., TL072)
Now, we place a unity gain buffer between the sensor and the load. The op-amp's non-inverting input draws practically zero current (input bias current is typically ~50 pA for a JFET input like the TL072). Because no current flows through the sensor's 10 kΩ internal resistance, there is zero voltage drop across it. The op-amp input sees the full 5.00V. The op-amp's output stage then easily drives the 1 kΩ load, maintaining exactly 5.00V at the load.

Where You Meet This in Practice

You will run into the need for a unity gain amp whenever a signal source is 'weak' and the destination is 'heavy'. Common real-world applications include:

  1. High-Impedance Sensors: Piezoelectric vibration sensors, pH probes, and piezo acoustic pickups generate voltage but have almost zero current capacity. They must be buffered immediately, or the signal will collapse into the noise floor.
  2. Voltage Reference Splitting: If you have a precision 4.096V reference chip (like the LM4040) and need to feed it to three different ADCs, connecting them all directly will pull the reference out of regulation. A unity gain amp isolates the reference from the ADCs.
  3. Driving Long Cables: Long coaxial cables have high parasitic capacitance. Driving them directly from a microcontroller DAC will cause ringing and instability. A buffer provides the transient current needed to charge the cable capacitance quickly.
  4. Audio Line Drivers: In audio gear, a buffer ensures the output stage can drive a 600 Ω mixer input without the high-pass filter characteristics of the source circuit shifting the bass response.

Bench Walkthrough: The ESP32 ADC Droop Disaster

To understand why this matters on the workbench, let's look at a classic microcontroller failure mode. According to All About Circuits, failing to buffer high-impedance sources is a primary cause of ADC inaccuracy.

The Setup: You are building a battery monitor for a 6.6V Li-ion pack using an ESP32-WROOM-32. The ESP32 ADC maxes out at ~3.1V, so you build a voltage divider using two 100 kΩ resistors to step the 6.6V down to 3.3V. You wire the midpoint directly to GPIO 34 (ADC1_CH6).

The Numbers: The Thevenin equivalent source resistance of two 100 kΩ resistors in a divider is 50 kΩ (100k || 100k). The ESP32's internal sample-and-hold (S&H) capacitor is roughly 10 pF to 12 pF, and the ADC sampling window is roughly 2 µs. Espressif's datasheet strongly recommends a source impedance of < 10 kΩ (ideally < 1 kΩ) for 12-bit accuracy.

The Outcome: Your serial monitor shows the battery voltage jumping erratically between 2.1V and 3.0V, even though your multimeter reads a rock-solid 3.30V at the divider midpoint.

What Went Wrong: The 50 kΩ source resistance forms an RC low-pass filter with the ESP32's internal S&H capacitor. The time constant (τ = R × C) is too slow. During the 2 µs sampling window, the internal capacitor cannot charge to the actual voltage level. The ADC takes a snapshot of a 'half-charged' capacitor, resulting in massive droop and random noise.

The Fix: Drop an MCP6001 (a cheap, rail-to-rail, 3.3V op-amp) onto the breadboard. Wire it as a unity gain amp: output tied directly to the inverting input (pin 1 to pin 2), and the divider midpoint to the non-inverting input (pin 3). The MCP6001's output impedance is < 1 Ω, charging the ESP32's S&H capacitor in nanoseconds. Your readings will instantly lock to a stable 3.30V.

Choosing the Right Op-Amp for Buffering

Not all op-amps are created equal. If you just grab the first chip from your bin, you might introduce new problems. Here is a breakdown of common choices for unity gain buffers:

Op-Amp Model Input Type Best Use Case Watch Out For
LM358 Bipolar General purpose, low-cost 5V-12V buffering. Crossover distortion near 0V; not rail-to-rail output.
MCP6001 CMOS 3.3V microcontrollers (ESP32, Pi Pico), battery powered. Low bandwidth (1 MHz); struggles with fast audio signals.
TL072 JFET Audio buffers, high-impedance piezo pickups. Requires dual supplies (e.g., ±9V) for best performance; high voltage.
OPA344 CMOS Precision single-supply sensor buffering. Higher cost (~$3.50 vs $0.20 for LM358).

For a deep dive into why buffers sometimes misbehave with certain loads, Texas Instruments' application note on op-amp stability (SLYT148) is mandatory reading. It explains how the low output impedance of a unity gain amp can actually cause high-frequency oscillation if you use it to drive a heavy capacitive load (like a long shielded cable or a large filter capacitor) without a small isolation resistor.

Frequently Asked Questions

Can I just use an NPN transistor as an emitter follower instead of an op-amp?
You can, but an emitter follower drops roughly 0.6V to 0.7V (the Vbe drop) from input to output. It is a current buffer, but it is not a unity gain voltage buffer because the output voltage will always be ~0.65V lower than the base voltage. An op-amp uses negative feedback to eliminate this offset.

Why does my unity gain amp oscillate or ring on my oscilloscope?
This usually happens when driving a capacitive load. The capacitance interacts with the op-amp's internal output resistance, creating a pole in the feedback loop that destroys phase margin. The fix is to add a small series resistor (typically 10 Ω to 50 Ω) between the op-amp's output pin and the capacitive load, taking the feedback signal from the op-amp pin itself, not after the resistor.

Do I need to add resistors to the inputs for bias current compensation?
In older bipolar op-amps (like the LM741), you had to match the DC resistance seen by both inputs to prevent offset voltage errors. Modern CMOS and JFET op-amps (like the MCP6001 or TL072) have input bias currents in the picoamp range, making compensation resistors unnecessary for 99% of hobbyist and maker applications.