Home > Blog > Blog

BJT vs MOSFET — Full Comparison & Selection Guide | ICMASS

2026/8/4 11:46:18

BJT vs MOSFET - Full Comparison & Selection Guide | ICMASS

BJTs are current-controlled. MOSFETs are voltage-controlled. That single difference cascades into every design decision: drive circuitry, switching speed, power dissipation, thermal behavior, and cost. This guide covers the full comparison, the physics behind each trade-off, and the practical mistakes that kill both devices.

For low-side switching under 100mA from 5V logic, a BJT with a base resistor is simplest. For high-speed switching, low on-resistance, or 3.3V drive, a MOSFET wins. If the gate connects to an external connector, a BJT base survives what destroys a MOSFET gate oxide.

BJT vs MOSFET: Side-by-Side Comparison

Parameter BJT (e.g. 2N3904 / S8050) MOSFET (e.g. 2N7002 / AO3400)
Control Mechanism Current-controlled (base current) Voltage-controlled (gate voltage)
Input Impedance Low (kΩ range) Very high (MΩ, capacitive)
Drive Requirement Continuous base current (IC/β) Zero DC current (charge gate once)
On-State Voltage Drop VCE(sat) ~ 0.2V (fixed) VDS = ID × RDS(on) (mV to V)
Switching Speed Moderate (storage time limits turn-off) Fast (gate charge limited, ns range)
ESD Sensitivity Robust (base-emitter junction is a diode) Fragile (gate oxide <100nm thick)
Temperature Coefficient Negative - hotter = more current (thermal runaway risk) Positive - hotter = higher RDS(on) (self-limiting)
Parallel Operation Needs emitter ballast resistors Naturally shares current (positive tempco)
External Parts (min) Base resistor mandatory Gate resistor optional; pull-down recommended
Linear Region Use Predictable (IC vs VBE is exponential but well-characterized) Poor (VGS(th) varies widely between units)
Gate/Base Threshold VBE ≈ 0.7V (silicon) VGS(th) = 0.5V–4V (varies widely)
Typical Gain β = 100–300 (hFE) gm = 1–20 S (transconductance)
Cost (SOT-23, volume) $0.01–$0.03 $0.02–$0.08
Common Packages SOT-23, TO-92, SOT-89 SOT-23, TO-252, SOIC-8, DFN

Key Differences

1. Drive: Current vs Voltage

A BJT needs continuous base current: IB = IC/β. At 100mA with β=100, the GPIO sources 1mA continuously. A MOSFET's gate is a capacitor - you charge it once and it stays on with zero DC current.

The practical consequence: battery-powered designs that spend most of their time in a static state (LED on, relay held) favor MOSFETs. The BJT's continuous base current drains the battery. At 1mA for 1000 hours, that's 1Ah wasted - the MOSFET wastes zero.

2. On-State Losses: Saturation vs Resistance

A saturated BJT drops VCE(sat) ≈ 0.2V. At 100mA: 20mW. A MOSFET's conduction loss is I2×RDS(on). A 2N7002 at 7.5Ω drops 0.75V (75mW). An AO3400A at 26mΩ drops 2.6mV (0.26mW).

The BJT's VCE(sat) is predictable but fixed. The MOSFET's conduction loss depends entirely on which part you pick - choose a low RDS(on) MOSFET and it beats any BJT. Choose a high RDS(on) one and the BJT wins.

3. Switching Speed: Storage Time vs Gate Charge

A BJT turning off must sweep stored charge from the base. Storage time (ts) can be hundreds of nanoseconds. A MOSFET turns off when gate capacitance discharges, typically tens of nanoseconds.

At 50kHz PWM, both work. At 500kHz, the BJT's storage time means it's still conducting when it should be off - shoot-through and overheating follow. Above 100kHz, default to MOSFET.

4. Ruggedness: ESD and Abuse Tolerance

A 2kV ESD event destroys a MOSFET gate. The same zap on a BJT forward-biases the base-emitter junction momentarily - the BJT survives. For external-facing I/O, connectors, test points, or automotive environments, BJTs with a base resistor are far harder to kill. Inside a sealed PCB, MOSFETs are fine.

5. Thermal Behavior: Runaway vs Self-Limiting

BJTs have a negative temperature coefficient: as they heat up, VBE drops (~2mV/°C) and collector current increases. More current → more heat → more current. This positive feedback loop is thermal runaway.

A BJT in a parallel pair that starts at 55% load share will hog more and more current as it heats, while the other device cools and conducts less. The end state: one BJT carries everything and self-destructs.

MOSFETs have a positive temperature coefficient (when fully enhanced): as they heat up, RDS(on) increases. More heat → higher resistance → less current share → self-balancing. This is why you can parallel MOSFETs without ballast resistors, and why they don't suffer catastrophic thermal runaway in switching applications.

Critical caveat: the positive tempco only applies in the fully enhanced (ohmic) region. In the linear/saturation region, MOSFETs exhibit a negative tempco just like BJTs. A MOSFET used as a linear amplifier or operated with insufficient gate voltage is just as vulnerable to thermal runaway as any BJT.

6. Parallel Operation

Parallel BJTs require emitter degeneration resistors to force current sharing. Without them, the hottest BJT hogs current and runs away. Parallel MOSFETs share current naturally through their positive tempco - no external ballasting needed. The trade-off: paralleling MOSFETs increases total gate capacitance, slowing switching speed for a given gate driver.

7. Linear Region: Amplification vs Switching

BJTs have a well-characterized, predictable relationship between IC and VBE (exponential, governed by the Ebers-Moll model). This makes them suitable for linear amplifiers, current sources, and analog circuits. The 2N3904's hFE and VBE curves are documented and repeatable unit-to-unit.

MOSFETs in the linear region have wide part-to-part variation in VGS(th). Two AO3400As from the same reel can differ by 0.5V in threshold. This makes them poor choices for precision linear circuits without feedback.

For switching, this variation doesn't matter - you drive the gate well past the threshold. For amplification, BJTs are the default unless your feedback loop swallows the VGS(th) spread.

Side-by-Side: BJT Switch vs MOSFET Switch

BJT Low-Side Switch GPIO RB BJT B C E Load +V GND IB = IC/β (continuous) RB = (VGPIO−0.7)/IB (mandatory) VCE(sat) ≈ 0.2V ESD: robust Parallel: needs ballast R Linear: predictable Tempco: negative (runaway) MOSFET Low-Side Switch GPIO RG RPD MOS G D S Load +V GND IG = 0 DC (capacitive gate) RG optional (damps ringing) VDS = ID×RDS(on) ESD: fragile gate oxide Parallel: self-balancing Linear: poor (Vth varies) Tempco: positive (self-limiting)

Left: The BJT switch needs a base resistor (mandatory). Right: The MOSFET switch has an optional gate resistor and a recommended pull-down to keep the gate from floating during MCU reset. Both are low-side configurations - the switch sits between load and ground.

On-State Voltage Drop Compared

Voltage drop @ 100mA, lower is cooler

AO3400A (MOSFET)
2.6mV
BSS138 (MOSFET)
0.35V
2N3904 (BJT)
0.2V
2N7002 (MOSFET)
0.75V

A modern low-RDS(on) MOSFET beats any BJT. A high-RDS(on) MOSFET loses. The part number matters more than the device type.

Decision Flow: BJT or MOSFET?

Switching a load? >100kHz? YES MOSFET Externalgate/base? YES BJT Batterypowered? YES MOSFET 3.3Vlogic? YES MOSFET (low Vth) Either. BJT cheaper.

Four forks: frequency rules out BJTs above 100kHz. External connections rule out MOSFET gates. Battery power favors zero-DC-current MOSFETs. 3.3V logic requires low-threshold MOSFETs. If none of these apply, both work - pick on cost.

Top 5 Mistakes When Switching with BJTs and MOSFETs

Mistake 1: Forgetting the Base Resistor (BJT)

Without a base resistor, the GPIO sources uncontrolled current into the base-emitter junction. A 3.3V GPIO on a bare BJT base pulls VBE to ~0.9V. The GPIO's internal resistance limits current to ~40mA - far more than needed. At 5V from a high-drive pin, the BJT can be destroyed instantly.

Always calculate RB = (VGPIO − 0.7) / IB, where IB = IC / βmin. For a 100mA load with βmin=100: RB = (3.3−0.7)/0.001 = 2.6kΩ. Use 2.2kΩ or 1kΩ for margin.

Mistake 2: Using a Standard MOSFET with 3.3V Logic

A MOSFET with VGS(th) = 3V will barely turn on at 3.3V gate drive. At VGS = VGS(th), the MOSFET conducts microamps - it's in the linear region, not fully enhanced. Result: high RDS(on), massive heating, potential thermal runaway.

For 3.3V logic, use a logic-level MOSFET with VGS(th) specified at 2.5V max or lower. Parts like BSS138, AO3400A, and SI2302DS are designed for this. Check RDS(on) at your gate drive voltage - if only 10V and 4.5V are specified, the part isn't a 3.3V logic-level MOSFET.

Mistake 3: Floating Gate/Base During MCU Reset

When the MCU is in reset or the GPIO is unconfigured, the pin is high-impedance. A floating MOSFET gate picks up noise through stray capacitance and can partially turn on, putting the device in the high-dissipation linear region. A floating BJT base does the same through leakage currents.

Fix: add a pull-down resistor (47kΩ–100kΩ) from gate/base to ground. This holds the switch firmly off until the MCU takes control of the pin.

Mistake 4: No Separate Ground Reference

When load and logic supplies are separate, their grounds must be connected. The gate voltage is referenced to the source pin. If source ground and GPIO ground differ, VGS is undefined. Capacitive coupling through CGD can partially turn on the MOSFET. Tie grounds at a single point near the switch.

Mistake 5: Neglecting Flyback Protection on Inductive Loads

Relays, solenoids, motors, and transformers store magnetic energy. When the switch turns off, the collapsing field generates V = L × dI/dt - potentially hundreds of volts, exceeding VDSS or VCEO. Both MOSFETs and BJTs are destroyed by this spike. MOSFET body diodes are not designed as flyback clamps.

Always add a flyback diode across the inductive load, cathode to positive supply. 1N4148 for small relays; 1N4007 for larger coils. This gives the stored magnetic energy a safe recirculation path that doesn't go through the switch.

When to Choose Each

Choose BJT when:

  • Load under 100mA, 5V logic. A 2N3904 + 1kΩ base resistor. Done. $0.02.
  • External connector on the control pin. The base-emitter diode survives ESD and miswiring.
  • Linear amplification or current source. BJT transfer characteristics are well-characterized and repeatable.
  • Absolute lowest BOM cost. At 100k+ volume, the $0.01 difference matters.
  • Automotive/industrial transients on the control line. BJT base is inherently robust.

Choose MOSFET when:

  • Switching above 100kHz. Storage time kills BJT efficiency.
  • Load above 200mA. No continuous base current penalty.
  • Battery-powered, static on-state. Zero DC gate current.
  • Parallel devices for high current. Positive tempco = self-balancing.
  • 3.3V or lower logic, >50mA load. Low-VGS(th) MOSFET beats BJT base current at these voltages.
  • Low on-state voltage drop needed. Sub-mΩ MOSFETs exist; sub-0.1V VCE(sat) BJTs don't.

Frequently Asked Questions

Q1: Can I replace a BJT with a MOSFET directly in the same circuit?

A: Not without changes. A BJT circuit has a base resistor; a MOSFET may not need one. VBE is ~0.7V; VGS(th) sets MOSFET turn-on. Pinouts differ: 2N3904 SOT-23 is B-E-C; 2N7002 is G-S-D. Verify all three before swapping.

Q2: My MOSFET gets hot but my BJT stays cool at the same current. Why?

A: Check RDS(on). A 2N7002 at 7.5Ω drops 0.75V (75mW) at 100mA. A 2N3904 drops 0.2V (20mW). Fix: use a MOSFET with lower RDS(on) like the AO3400A (26mΩ).

Q3: Do I need a gate resistor for a MOSFET?

A: At low speed with direct GPIO drive, no. The GPIO's output resistance limits gate inrush. At high PWM or with gate driver ICs, add 10–100Ω to damp ringing. Above 5cm gate trace, add a resistor to prevent parasitic oscillation.

Q4: Why do MOSFETs fail when switching inductive loads?

A: They fail without flyback protection - same as BJTs. Both devices need a flyback diode across the inductive load. The MOSFET's body diode can sometimes serve this role in H-bridge topologies but is not a substitute for an explicit clamp in simple low-side switching.

Q5: BJT or MOSFET for a 3.3V MCU driving a 12V relay at 50mA?

A: BJT. A 2N3904 with a 1kΩ base resistor gives IB = (3.3−0.7)/1000 = 2.6mA, enough at β=100. Add a flyback diode. Total BOM: $0.03. A MOSFET would need gate protection since relay coil kickback couples through CGD.

Q6: Can I parallel two BJTs to double the current?

A: Not without emitter ballast resistors. Without them, the hotter BJT hogs more current (negative tempco), runs hotter, hogs even more, and fails. Add 0.1Ω–1Ω resistors in series with each emitter. For MOSFETs, parallel directly - the positive tempco self-balances.

Q7: What's the difference between a logic-level MOSFET and a standard one?

A: The gate threshold voltage. Standard MOSFETs typically specify RDS(on) at VGS = 10V and may need 4–5V to fully enhance. Logic-level MOSFETs are designed to fully enhance at 3.3V or 5V, with RDS(on) specified at VGS = 4.5V or 2.5V. If the datasheet RDS(on) table doesn't have a row at your GPIO voltage, assume the part isn't suitable.

Q8: When should I use an IGBT instead of a BJT or MOSFET?

A: High voltage (>300V) and high current (>10A) switching at moderate frequencies (<20kHz). IGBTs combine a MOSFET gate (voltage-controlled) with a BJT output (low VCE(sat) at high voltage). They dominate motor drives, induction heating, and inverters. Below 100V, MOSFETs win. In small-signal, BJTs and MOSFETs are the only game.

Subscribe to IC-MAX!
Contact Name
*Email
Featured PartsMore
LNK304DN-TL
LNK304DN-TL Power Integrations
LNK304GN-TL
LNK304GN-TL Power Integrations
LNK304DG-TL
LNK304DG-TL Power Integrations
TNY277PN
TNY277PN Power Integrations
TNY276PN
TNY276PN Power Integrations
TNY278PN
TNY278PN Power Integrations
TNY278GN-TL
TNY278GN-TL Power Integrations
TNY280GN-TL
TNY280GN-TL Power Integrations
TOP266KG-TL
TOP266KG-TL Power Integrations
TOP258PN
TOP258PN Power Integrations
TOP253PN
TOP253PN Power Integrations
TOP253PNAU
TOP253PNAU Power Integrations
index: 1 2 3 4 5 6 7 8 9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
ICMASS.COM

HOME

ICMASS.COM

PRODUCT

ICMASS.COM

PHONE

ICMASS.COM

USER