SCT-013 Burden Resistor Calculator
Choosing the correct burden resistor for a current transformer is critical for accurate AC measurement. This calculator goes beyond simple Ohm’s law: it considers RMS ↔ peak conversion, ADC headroom, custom bias midpoint, core saturation limits, and your real maximum current. Perfect for SCT‑013‑000, CT08‑1200, or any 50/100mA output CT.
① Current Transformer (CT)
⚡ Auto-calculated from turns ratio & primary current. Edit to override (breaks preset).
Limiting range improves resolution. E.g., 60A instead of 100A.
② ADC & Bias Configuration
AC signal centers here. Changing this affects available peak swing.
Default 20% (10% below bias, 10% above).
📐 Calculated Burden Resistor & Math
Why Burden Resistor Math Matters for SCT-013
Current transformers output a current proportional to the primary current. The SCT-013-000 delivers 50mA at 100A (1:2000 turns). Using a burden resistor converts this current to a voltage your ADC can read. But because AC current swings both positive and negative, a simple V=I x R will cause clipping unless you bias the signal to mid‑supply. Many online tutorials blindly recommend 33Ω for 5V Arduinos — that works for 5V, but for 3.3V systems and limited current ranges the correct value changes significantly.
Our calculator respects: (1) Peak current = RMS x √2, (2) symmetrical headroom to avoid ADC saturation, (3) reduced max current to improve resolution, (4) custom bias midpoint, (5) core saturation warning when burden exceeds ~100Ω. Always verify the CT linearity region. For most home energy monitoring (≤60A), a 33–39Ω burden on 3.3V ADC gives excellent accuracy. Use standard E12 resistors or combine in series.
⚠️ Note: The manufacturer's “max sampling resistor 10Ω” applies when output is limited to 0-1V. With higher ADC ranges and proper biasing, larger resistors are safe, but exceeding ~100Ω risks core saturation at high currents — the calculator will warn you.
The math
How to Calculate the Correct Burden Resistor for the SCT-013-000
Current transformers (CTs) are essential tools for measuring AC current flowing through a wire—such as the main power feed from your utility company—without requiring direct electrical contact. The **SCT-013-000** is a highly popular split-core current transformer. "Split-core" means the ferrite core can open and snap closed around an existing live wire, eliminating the need to disconnect or reroute high-voltage cables.
Unlike voltage transformers, the SCT-013-000 outputs a small AC *current* that is strictly proportional to the primary current flowing through the measured wire. Specifically, it has a turns ratio of 1:2000, meaning at its maximum rated 100 Amps, it outputs 50 milliamps (50mA). However, microcontrollers like the ESP8266 (NodeMCU), ESP32, or Arduino measure *voltage*, not current. To bridge this gap, you must use a **burden resistor** (often called a sampling resistor in datasheets) to convert that current into a readable voltage.
Note: Some models, like the SCT-013-030 or SCT-013-060, have a burden resistor built-in at the factory to output exactly 1V. The SCT-013-000 does not, leaving you with the flexibility—and the responsibility—of calculating your own.*
The Basic Math: Ohm's Law for Current Transformers
At its core, converting current to voltage relies on Ohm's Law: V = I x R.
Assuming a maximum output of 50mA (0.05A) at 100 Amps:
To get 1V at maximum current: 1V / 0.05A = 20 ohm
To get 5V at maximum current: 5V / 0.05A = 100 ohm
To get 3.3V at maximum current: 3.3V / 0.05A = 66 ohm
However, if you are building an energy monitor using a 3.3V microcontroller (like an ESP8266, ESP32, or 3.3V Arduino Pro Mini), plugging in 66 ohms and walking away will result in terrible data. Here are the four engineering problems you must account for to get an accurate reading.
4 Real-World Problems with Basic Burden Resistor Calculations
Problem 1: The AC Voltage Swing & Creating a "Fake Ground"
Alternating Current (AC) swings smoothly between positive and negative voltages. Most microcontroller Analog-to-Digital Converters (ADCs) can only read positive voltages (typically 0V to 3.3V). If you feed a negative AC wave directly into an ESP8266, you will clip the bottom half of the wave and potentially damage the pin.
To fix this, we must bias the AC signal by creating a "fake ground" (DC offset) right in the middle of the ADC's range. For a 3.3V ADC, this midpoint is **1.65V**. The AC wave will now ride on top of this 1.65V line. Anything below 1.65V represents the negative AC cycle; anything above is the positive cycle.
Because the wave can now only swing 1.65V up or down, our new maximum target voltage is 1.65V. Recalculating: (1.65V / 0.05A = 33 ohm). But wait—we are not done yet.
Problem 2: The RMS to Peak Voltage Trap
Electrical current is typically measured in RMS (Root Mean Square), but ADCs sample the absolute peak of the sine wave. The peak of an AC wave is significantly higher than its RMS value.
To avoid clipping the ADC at the very top and bottom of the sine wave, we must size the resistor for the absolute peak current:
I_peak = 0.05A x sqrt(2) ≈ 0.0707A
To keep the peak voltage from exceeding our 1.65V swing:
R_burden = 1.65V / 0.0707A ≈ 23.34 Ohm
Problem 3: Increasing Resolution by Capping Max Current
The previous math assumes you want to measure a full 100 Amps. In residential energy monitoring, this is rarely the case. If your main breaker or target appliance never exceeds 60 Amps, sizing your resistor for 100 Amps wastes nearly half of your ADC's resolution.
By artificially capping our calculation at 60A, we stretch the smaller waveform across the full 10-bit or 12-bit range of the ADC, effectively doubling our measurement resolution.
At 60 Amps (instead of 100A), the secondary current is 30mA (0.03A).
I_secondary = 0.03A
I_peak = 0.03A x sqrt(2) ≈ 0.0424A
R_burden = 1.65V / 0.0424A ≈ 39 Ohm
Problem 4: Leaving Headroom for ADC Noise and Hardware Tolerances
In the real world, microcontrollers are noisy—especially ESP8266 and ESP32 boards where active Wi-Fi transmissions cause voltage fluctuations. Furthermore, ADCs become notoriously non-linear when pushed to their absolute limits near the 0V and 3.3V rails.
To guarantee a clean signal, we must leave some "wiggle room" (headroom) at the top and bottom of the wave. By reducing our target swing from 1.65V down to 1.48V, we create a 0.17V safety buffer on both ends. This means our fake ground remains at 1.65V, but our wave will only ever swing between 0.17V and 3.13V.
Putting it all together for a 60A max target with a 20% total headroom buffer:
I_secondary = 0.03A
I_peak = 0.03A x sqrt(2) ≈ 0.0424A
R_burden = 1.48V / 0.0424A ≈ 34.9 ohm
Conclusion: After accounting for peak current, a 60A maximum real-world range, and noise headroom, 35Ω is the optimal burden resistor value for this setup.
Advanced Scenarios and Datasheet Clarifications
Problem 5: Calculating for a Custom Bias Voltage (Advanced)
While the standard practice is to bias the signal at (Vref / 2) (e.g., 1.65V), some specialized circuits may require a different fake ground. For instance, if you establish a fake ground at exactly 1.0V, your signal can only safely swing 1.0V up and 1.0V down before hitting the 0V floor.
If we apply our 20% headroom rule to a 1.0V swing, our usable swing becomes 0.9V (measuring from 0.1V to 1.9V).
I_secondary = 0.03A
I_peak = 0.03A x √(2) ≈ 0.0424A
R_burden = 0.9V / 0.0424A ≈ 21.22 Ohm
Important Notes on the SCT-013 Datasheet
The "10 Ohm Max" Myth: The SCT-013-000 datasheet states a "Max sampling resistance of 10Ω." This causes a lot of confusion. This limit *only* applies if you are aiming for a tight 0V to 1V output (10Ω x 0.05A = 0.5V, which swings 0.5V above and below your fake ground). When interfacing with a wider 3.3V ADC range with proper DC biasing, using larger resistor values is entirely safe and necessary.
Linearity Region: According to the datasheets (cross-referencing both the 60A model and the no-burden model), using these calculated resistance values maintains excellent linearity up to 60 Amps.
Core Saturation Warning: Keep in mind that steadily increasing the burden resistance increases the load on the current transformer. Pushing the resistance too high (generally above ~100Ω) will cause core saturation, leading to waveform distortion and significant measurement errors. Our calculator will automatically warn you if your parameters enter this danger zone.