HomeCalculatorsElectricalSemiconductorMOSFET Threshold & Overdrive Calculator
Electrical calculator

MOSFET Threshold & Overdrive Calculator

Calculate MOSFET overdrive Vod=Vgs−Vth, square-law drain current, or model Vth. Vth here is the long-channel square-law parameter — not datasheet VGS(th). Runs locally in your browser.

Instant result
Result

Enter values to calculate.

Inputs
Mode
Formula
Trust summary CVP VERIFIED · CVP protocol 1.0.0-proposed · Engineering assurance
Input interpretation
Enter values to calculate.
Result
Assurance
Engineering
Declared partition coverage
PASS · 4/4 declared partitions (overdrive, id, vth, invalid-domain) · Matrix
Known limitations
  • Model Vth ≠ datasheet VGS(th); kn not temperature-scaled
  • Core CVP does not include live graph, viewport, or pointer interaction.
Model
MOSFET overdrive, square-law Id (cutoff / linear / saturation), or model Vth, with optional linear Vth(Tj).
Scope
Ideal long-channel square-law NMOS model. Not BSIM, velocity saturation, or short-channel.
Verification
Engine tested · Source checked · v1.3.1 · CVP VERIFIED · CVP protocol 1.0.0-proposed · Engineering assurance· View Manifest · CVP overview · Specification
Versions
Calculation 1.3.1 · CVP protocol 1.0.0-proposed
CVP identity
11/11 property · digest df4f29a72c29
Legacy regression
26/26 tests · Production surface contract 10/10
Reference
O1 model · O2 expected_values · O2 numerical_behavior
Interfaces
PASS · UI (SSR) / REST / MCP — ui-ssr is query-result HTML, not a live browser session.
Supplemental domain review
Internal · Pass · electrical-engineer
Named expert review
Not performed
CVP suite
4/4 golden · 5/5 CVP boundary · 5/5 invalid · 11/11 property · 2/2 cross-interface · 10/10 CVP contract · Manifest
Sources
Sources
Evidence
10 legacy golden · 5 legacy boundary · legacy regression suite · 4/4 oracle-backed golden · 5/5 invalid · Artifact integrity PASS · CalculatorX electrical review
This calculator CURRENT · Public schema 1.3.1 matches · Semantic contract ✓ · Production attested · Public/cache ✓ · Origin ✓
Semantic contract
PASS
Full verification

Manifest identity, reference classes, interfaces, suite, and production records.

Formulas

Core equations used by this calculator.

OverdriveVod = Vgs − Vth
Id satId = ½ · kn · Vod²
Id linearId = kn · (Vod · Vds − Vds² / 2)
kn conventionkn = μn · Cox · W/L
Vth(Tj)Vth(Tj) = Vth(Tref) + α · (Tj − Tref)
Solve VthVth = Vgs − √(2 · Id / kn)
iLong-channel square-law. Not a BSIM / short-channel / subthreshold model. Optional Vds classifies cutoff / linear / saturation. Optional linear Vth(Tj); kn / μ(T) is not scaled. CalculatorX defines kn so that the ½ factor is not included in kn.

How to use

1

Choose what to solve for

Overdrive, drain current, or model threshold — same engine as the API.

2

Enter Vgs and the known device parameters

Vth here is the square-law threshold parameter. Datasheet VGS(th) is a small-current test voltage, not recommended gate drive.

3

Optional Vds

Enter Vds to classify cutoff / linear / saturation. Omit it to keep Vod-only bookkeeping; Id then assumes Vds ≥ Vod.

4

Optional Vth(Tj)

Enter Tj to scale model Vth linearly from Tref. Default α = −2 mV/°C is a Si planning value, not datasheet TCV. kn / μ(T) is not scaled.

Example calculations

Common configurations with formula and result.

ϟ

Vgs=3 V · Vth=1 V

overdrive

3−1
Vod=2 V · above threshold
ϟ

Same bias · kn=0.5 A/V² · Vds omitted

saturation square-law Id assumed

Id=½·0.5·2²
Id=1 A · above_threshold · SATURATION_ASSUMED
ϟ

Same bias · Vds=1 V

linear region

Id=0.5·(2·1−½·1²)
Id=0.75 A · linear
ϟ

Vgs=1 V · Vth=2 V · kn=1 A/V²

id mode cutoff

Vod≤0 → Id=0
Id=0 A · cutoff · subthreshold not modeled
ϟ

Vgs=3 V · Vth=1 V @ 25 °C · Tj=125 °C · α=−0.002 V/°C

linear Vth(Tj)

Vth=1−0.2 · Vod=2.2
Vod=2.2 V · Vth(Tj)=0.8 V

MOSFET Threshold & Overdrive calculator specification

Version 1.3.1 · Engine tested · Supplemental domain review · Internal · 2026-08-17

Calculation status

Review policy · Evidence · Reviewed by CalculatorX electrical review (electrical-engineer)

Definition
Overdrive Vod = Vgs − Vth. Optional Vds classifies cutoff / linear / saturation. Optional linear Vth(Tj)=Vth(Tref)+α·(Tj−Tref); kn is not temperature-scaled. Id_sat = ½·kn·Vod² and Id_lin = kn·(Vod·Vds − Vds²/2) with kn = μn·Cox·W/L (the ½ is not inside kn). Vth is the model threshold, not datasheet VGS(th).
What it calculates
MOSFET overdrive, square-law Id (cutoff / linear / saturation), or model Vth, with optional linear Vth(Tj).
Inputs
  • mode — overdrive | id | vth (default overdrive)
  • Vgs_V — gate-source voltage (V)
  • Vth_V — square-law threshold at Tref (V), required for overdrive and id. Not datasheet VGS(th).
  • Id_A > 0 — drain current (A), required for vth
  • kn_A_per_V2 > 0 — kn = μn·Cox·W/L (A/V²), required for id and vth. ½ is not included in kn. Not temperature-scaled.
  • Vds_V ≥ 0 — optional drain-source voltage (V). Classifies cutoff / linear / saturation.
  • temperature_model — none | linear. Omitted infers linear if Tj_C or alpha_V_per_C is set, else none.
  • Tj_C — junction temperature (°C), required for linear. Must be ≥ −273.15.
  • Tref_C — reference temperature (°C), default 25. Must be ≥ −273.15.
  • alpha_V_per_C — dVth/dT (V/°C). Default −0.002 when linear and omitted (Si planning, not datasheet TCV).
Outputs
  • Vod_V — overdrive Vgs − Vth_used (V). Vth_used is Vth(Tj) when linear.
  • region — cutoff | above_threshold | linear | saturation. above_threshold only when Vod>0 and Vds omitted.
  • strong_inversion — deprecated alias of Vod > 0, not a physics strong-inversion test
  • Id_A — square-law Id for the classified region, or 0 A in cutoff
  • Vth_V — threshold used in Vod (Vth at Tj when linear; extracted at measurement T in vth mode)
  • Vth_Tj_V / Vth_Tref_V — present when linear
  • Vds_V — echoed when provided
  • Tj_C, Tref_C, alpha_V_per_C, temperature_model — present when linear
Formula
Vth(Tj)=Vth(Tref)+α(Tj−Tref); Vod=Vgs−Vth(Tj); sat Id=½ kn Vod²; linear Id=kn(Vod·Vds−Vds²/2); kn=μn Cox W/L (½ not in kn); Vth=Vgs−√(2 Id/kn)
Assumptions
  • Ideal long-channel square-law NMOS model. Not BSIM, velocity saturation, or short-channel.
  • Vth is the model threshold parameter, not datasheet VGS(th) and not recommended gate drive.
  • kn = μn·Cox·W/L such that Id_sat = ½·kn·Vod². The ½ factor is not included in kn.
  • When Vds is omitted, Id uses the saturation equation and region is above_threshold or cutoff.
  • When Vds is provided: cutoff if Vod≤0; linear if 0≤Vds<Vod; saturation if Vds≥Vod.
  • Vod > 0 means above the model threshold, not strong inversion.
  • Cutoff returns Id = 0 A. Subthreshold current is not modeled.
  • Solve-Vth always uses the saturation extract Vth=Vgs−√(2Id/kn) at the measurement temperature.
  • Linear Vth(Tj) does not scale kn or μ(T).
  • Default α = −0.002 V/°C is a Si planning value, not a datasheet TCV of VGS(th).
Units
  • V, A, A/V², °C, V/°C
Boundary conditions
  • Unknown mode or temperature_model → INVALID_MODE
  • Missing Vgs / Vth / Id / kn / Tj when required → MISSING_REQUIRED_INPUT
  • Non-finite → INVALID_NUMBER
  • Id or kn ≤ 0 → VALUE_MUST_BE_POSITIVE
  • Vds < 0 → VALUE_MUST_BE_NON_NEGATIVE
  • Tj or Tref < −273.15 °C → VALUE_OUT_OF_RANGE
  • id mode Vgs ≤ Vth_used → Id_A=0, region=cutoff, warning SUBTHRESHOLD_NOT_MODELED (CUTOFF_NOT_MODELED deprecated alias)
  • 0 < Vod < 0.1 V → warning NEAR_THRESHOLD
  • Every success includes warning MODEL_VTH_NOT_DATASHEET_VGS_TH
  • id/vth with Vds omitted and Vod>0 → warning SATURATION_ASSUMED
  • Vds < Vod and Vod>0 → region=linear, warning LINEAR_REGION (id) or SATURATION_EXTRACT_ASSUMED (vth)
  • linear with omitted α → warning VTH_TEMP_COEFF_DEFAULT
  • temperature_model=none with Tj/α present → warning TEMPERATURE_NOT_APPLIED
  • linear id/vth → warning KN_TEMP_NOT_MODELED
  • α > 0 → warning VTH_TEMP_COEFF_POSITIVE
Example
Vgs=3 Vth=1 Tj=125 α=−0.002 → Vod=2.2, Vth(Tj)=0.8
Validation cases

14 published on this page · 26/26 tests · Production surface contract 10/10 · View evidence

  • overdrive Vgs=3 Vth=1 → Vod=2, region=above_threshold
  • id Vgs=3 Vth=1 kn=0.5 → Id=1, region=above_threshold, SATURATION_ASSUMED
  • id Vgs=3 Vth=1 kn=0.5 Vds=1 → Id=0.75, region=linear
  • id Vgs=3 Vth=1 kn=0.5 Vds=2 → Id=1, region=saturation
  • vth Vgs=3 Id=1 kn=0.5 → Vth=1, Vod=2
  • id Vgs=1 Vth=2 kn=1 → Id=0, region=cutoff
  • overdrive Vgs=1.01 Vth=1 → Vod=0.01, region=above_threshold, warning NEAR_THRESHOLD
  • overdrive Vgs=3 Vth=1 Tj=125 alpha_V_per_C=-0.002 → Vod=2.2, Vth_Tj=0.8, Vth_Tref=1
  • id Vgs=3 Vth=1 kn=0.5 Tj=125 alpha_V_per_C=-0.002 → Id=1.21, Vod=2.2, KN_TEMP_NOT_MODELED
  • vth Vgs=3 Id=1 kn=0.5 Tj=125 alpha_V_per_C=-0.002 → Vth_Tj=1, Vth_Tref=1.2
  • overdrive Vgs=3 Vth=1 temperature_model=linear → error MISSING_REQUIRED_INPUT
  • overdrive Vgs=3 Vth=1 Tj=-300 → error VALUE_OUT_OF_RANGE
  • id kn=0 → error VALUE_MUST_BE_POSITIVE
  • id Vds=-1 → error VALUE_MUST_BE_NON_NEGATIVE
Sources
Last reviewed
2026-08-17
Reviewed by
CalculatorX electrical review (electrical-engineer)
Calculation version
1.3.1

Background

Interpretation and common distinctions.

Compute MOSFET overdrive, square-law drain current, or model threshold. Vth here is the long-channel square-law parameter — not datasheet VGS(th) and not recommended gate drive.

Default example: Vgs = 3 V · Vth = 1 V → Vod = 2 V. With Vds = 1 V and kn = 0.5 A/V² → Id = 0.75 A (linear). With Tj = 125 °C and α = −0.002 V/°C → Vth(Tj) = 0.8 V · Vod = 2.2 V.

Supported and not supported

Supported

  • Overdrive Vod = Vgs − Vth
  • Optional Vds → cutoff / linear / saturation
  • Square-law Id in cutoff (0 A), linear, and saturation
  • Solve model Vth from saturation Id and kn
  • Optional linear Vth(Tj) = Vth(Tref) + α·(Tj−Tref)
  • API via electrical.mosfet.vth

Not supported

  • Datasheet VGS(th) extraction at a test current
  • Subthreshold / weak-inversion current
  • Temperature-dependent kn / μ(T) / compact-model Vth
  • Velocity saturation, BSIM, or short-channel models

Agent / API notes

Capability id: electrical.mosfet.vth · tool id: mosfet-vth · pin calculation_version: 1.3.1.

region is cutoff, above_threshold (Vod>0 and Vds omitted), linear, or saturation. strong_inversion is a deprecated alias of Vod > 0 — not a physics strong-inversion test.

When temperature_model=linear, entered Vth_V is at Tref_C (default 25 °C). Result Vth_V is the threshold used in Vod (Vth_Tj_V). Solve-Vth returns Vth at Tj and Vth_Tref_V. kn is not scaled.

kn convention: kn = μn·Cox·W/L, Id_sat = ½·kn·Vod², Id_lin = kn·(Vod·Vds − Vds²/2). The ½ is not inside kn.

Stable error codes: MISSING_REQUIRED_INPUT, INVALID_NUMBER, VALUE_MUST_BE_POSITIVE, VALUE_MUST_BE_NON_NEGATIVE, VALUE_OUT_OF_RANGE, INVALID_MODE.

Stable warnings: MODEL_VTH_NOT_DATASHEET_VGS_TH, SUBTHRESHOLD_NOT_MODELED, CUTOFF_NOT_MODELED (deprecated alias of SUBTHRESHOLD_NOT_MODELED), SATURATION_ASSUMED, LINEAR_REGION, SATURATION_EXTRACT_ASSUMED, NEAR_THRESHOLD, VTH_TEMP_COEFF_DEFAULT, KN_TEMP_NOT_MODELED, TEMPERATURE_NOT_APPLIED, VTH_TEMP_COEFF_POSITIVE.

}

Frequently asked questions

Key distinctions behind the calculation.

Is Vth the same as datasheet VGS(th)?

No. Vth in this calculator is the threshold parameter of the ideal long-channel square-law model. Datasheet VGS(th) is usually the gate voltage at a specified small drain current — the onset of conduction, not the recommended gate-drive voltage, and not a drop-in value for this Vth.

What is kn?

CalculatorX defines kn = μn·Cox·W/L (A/V²) such that Id = ½·kn·(Vgs−Vth)² in saturation. The ½ factor is not included in kn. Do not use a β that already absorbs ½, and do not use SPICE KP (μn·Cox) without multiplying by W/L — either mistake is a 2× (or W/L) error.

Does Id mode need Vds?

Optional. Omit Vds and Id uses the saturation equation Id = ½·kn·Vod² with warning SATURATION_ASSUMED. Provide Vds to classify cutoff (Vod≤0), linear (0≤Vds<Vod), or saturation (Vds≥Vod). Linear Id is kn·(Vod·Vds − Vds²/2) with the same kn convention.

What happens when Vgs ≤ Vth?

That is a legal operating point. Overdrive returns Vod ≤ 0 (cutoff). Id mode returns 0 A with warning SUBTHRESHOLD_NOT_MODELED (CUTOFF_NOT_MODELED is a deprecated alias). Cutoff is modeled; subthreshold leakage is outside this model — it is not an illegal input.

Does Vod > 0 mean strong inversion?

No. It only means the bias is above the model threshold. A few tens of millivolts of overdrive is not strong inversion; the square-law approximation is poor near threshold (warning NEAR_THRESHOLD when 0 < Vod < 0.1 V).

How does temperature change Vth?

Optional linear model: Vth(Tj) = Vth(Tref) + α·(Tj−Tref). Entered Vth is at Tref (default 25 °C). Default α = −0.002 V/°C (−2 mV/°C) is a Si planning value — not a datasheet TCV of VGS(th). kn / mobility is not scaled, so hot Id is not a compact-model current. Omit Tj to keep isothermal v1.2.0 behavior.