Electrical Trade & Electronics Solar, Battery & Backup Power NEC 2023 (NFPA 70) Article 690.7

Solar String Voltage Calculator (NEC 690.7)

A photovoltaic module's open-circuit voltage rises as it gets colder, and the coldest morning of the year is when a string is most likely to destroy an inverter. NEC 690.7 requires the maximum PV system voltage to be calculated at the lowest expected ambient temperature, using the module's own temperature coefficient of Voc. This calculator applies that correction, checks the cold-morning string voltage against the inverter's absolute maximum input, checks the hot-afternoon operating voltage against the MPPT start point, and tells you the largest and smallest number of modules a string may legally and usefully contain.

Calculator

This calculator runs in your browser. Enable JavaScript for live results — the inputs, formula and worked example below remain fully readable without it.

Inputs this calculator takes, with typical values
InputWhat to enterExample
Module open-circuit voltage (Voc)The STC open-circuit voltage from the module datasheet, not the operating voltage.49.8 V
Module voltage at maximum power (Vmp)The STC maximum-power voltage from the datasheet; it sets whether the string stays inside the MPPT window when hot.41.8 V
Temperature coefficient of VocEnter it negative, as the datasheet prints it — typically −0.24 to −0.35 %/°C for crystalline silicon.-0.26 %/°C
Temperature coefficient of VmpAlso negative. If the datasheet omits it, the coefficient of Pmax is a reasonable stand-in because current changes little with temperature.-0.35 %/°C
Lowest expected ambient temperatureUse the extreme annual mean minimum design dry-bulb for the site; to convert from Fahrenheit, subtract 32 and multiply by 5/9.-10 °C
Highest expected cell temperatureCell temperature, not air temperature: add roughly 25–30 °C to the record high ambient for a close roof mount, less for a ground array.70 °C
Modules per stringHow many modules you plan to wire in series in one string.10
Inverter maximum input voltageThe absolute maximum DC input on the inverter label — 600 V on most residential units, 1,000 or 1,500 V on commercial equipment.600 V
MPPT window lower limitThe lowest voltage at which the inverter can track maximum power; below it the string stops producing useful output.200 V
MPPT window upper limitThe highest voltage at which the inverter can still track; above it the inverter may clip production even though it is not damaged.550 V

It returns

  • String voltage at the coldest temperature — The NEC 690.7 maximum PV system voltage for this string.
  • Headroom to the inverter maximum — Inverter maximum input minus the cold string voltage. Negative means the string is too long.
  • Corrected Voc per module
  • String Vmp at the hottest cell temperature
  • Maximum modules per string
  • Minimum modules per string

The formula

Vmax=NVoc[1+β100(Tmin25)]
Vmp=NVmp,STC[1+γ100(Tcell25)]
Nmax=VinvVoc,corr

In plain text: V_max = N × Voc × [1 + (β/100)(T_min − 25)]

  • NModules wired in series in one string (—)
  • VocModule open-circuit voltage at standard test conditions (V)
  • βTemperature coefficient of Voc, negative (%/°C)
  • T_minLowest expected ambient temperature at the site (°C)
  • γTemperature coefficient of Vmp, negative (%/°C)
  • T_cellHighest expected cell temperature under load (°C)

The 25 in each bracket is the standard test condition cell temperature. Both coefficients are entered as negative numbers, so a temperature below 25 °C produces a factor greater than one.

Updated Category Solar, Battery & Backup Power Verified against published test cases Reading time 13 min

Why cold weather, not hot weather, sets the string limit

A silicon solar cell's open-circuit voltage falls as it warms and rises as it cools, by roughly a quarter to a third of a percent per degree Celsius. Current barely moves. That asymmetry means a PV string's voltage peaks on the coldest, clearest morning of the year — typically just after sunrise, when the modules are at air temperature and the sun has just hit them — and that peak is what can exceed an inverter's absolute maximum input and destroy it.

NEC 690.7 turns this into a design rule. The maximum PV system voltage is the sum of the series-connected modules' rated open-circuit voltage, corrected for the lowest expected ambient temperature. That corrected value is what must stay below the inverter's rating, below the DC disconnect and conductor voltage ratings, and below the 600 V ceiling that applies to one- and two-family dwellings unless the system qualifies for one of the code's exceptions.

The opposite bound comes from the inverter rather than the code. Under load on a hot roof, cell temperature can reach 70 °C or more, and the maximum-power voltage falls with it. If it falls below the MPPT window's lower limit, the inverter stops tracking and the array's output collapses at exactly the time of day the sun is strongest. A string that is legal but too short is a production problem; a string that is too long is a safety and warranty problem.

So string sizing is a bracketing exercise: long enough to stay above the MPPT start point when hot, short enough to stay below the maximum input when cold. This page evaluates both ends.

The correction, term by term

The correction is a straight linear extrapolation from standard test conditions: V = VSTC × [1 + (coefficient/100) × (T − 25)]. Everything hangs on getting three things right.

The coefficient is negative and is a percentage per degree. A module with β = −0.26 %/°C loses 0.26% of its Voc for each degree above 25 °C, and gains the same for each degree below. At −10 °C the bracket is 1 + (−0.0026)(−35) = 1.091, so the module produces 9.1% more open-circuit voltage than its datasheet says. Some datasheets print the coefficient in mV/°C instead; divide by Voc and multiply by 100 to convert.

The cold case uses ambient temperature; the hot case uses cell temperature. This trips people up, and it is not an inconsistency. At open circuit no current flows, so the module dissipates almost nothing and sits close to air temperature — which is why NEC 690.7 says ambient. Under load the cell runs well above air temperature because it is absorbing sunlight and converting only a fifth of it, so the Vmp check has to use a cell temperature. A close-mounted roof array commonly runs 25–30 °C above ambient; a ground-mounted or racked array with free airflow runs closer to 20 °C above.

The design minimum temperature is a statistical figure, not the coldest day you remember. The convention in the industry is the extreme annual mean minimum design dry-bulb temperature published in the ASHRAE climatic design data for the nearest station, which is the number the Solar ABCs expedited-permit process and most plan reviewers expect. Using a mild winter average instead of an extreme value is the single most common way a string ends up over voltage.

Then divide. The maximum modules per string is floor(inverter maximum ÷ corrected Voc) — floor, not round, because a fractional module is not a thing and rounding up is the failure mode you are trying to avoid. The minimum is ceil(MPPT lower limit ÷ hot Vmp). If the minimum exceeds the maximum, no string length works and you need different equipment.

Worked example: a 10-module string on a 600 V inverter

The module has Voc = 49.8 V, Vmp = 41.8 V, β = −0.26 %/°C and γ = −0.35 %/°C. The site's design minimum ambient is −10 °C, the roof array is expected to reach 70 °C cell temperature, and the inverter is rated 600 V maximum input with an MPPT window of 200–550 V. You plan ten modules per string.

  1. Cold temperature swing. −10 − 25 = −35 °C below STC.
  2. Cold correction factor. 1 + (−0.26 ÷ 100) × (−35) = 1 + 0.091 = 1.091.
  3. Corrected Voc. 49.8 × 1.091 = 54.3318 V per module.
  4. String voltage when cold. 10 × 54.3318 = 543.3 V. That is 56.7 V below the 600 V limit, so the string passes with 9.4% headroom.
  5. Maximum string length. 600 ÷ 54.3318 = 11.043, and the floor of that is 11 modules. Twelve modules would give 651.98 V — 52 V over the limit and an immediate inverter failure on the first cold morning.
  6. Hot correction factor. 1 + (−0.35 ÷ 100) × (70 − 25) = 1 − 0.1575 = 0.8425.
  7. String Vmp when hot. 10 × 41.8 × 0.8425 = 10 × 35.2165 = 352.2 V, comfortably inside the 200–550 V window.
  8. Minimum string length. 200 ÷ 35.2165 = 5.679, and the ceiling of that is 6 modules.

So any string from 6 to 11 modules works electrically, and 10 is a sensible choice because it sits near the top of the window where the inverter is most efficient without crowding the cold limit. Move the same array to a site with a −25 °C design minimum and the correction factor becomes 1.13, the corrected Voc becomes 56.274 V, and the maximum string drops to 600 ÷ 56.274 = 10.66, or 10 modules — the ten-module design still works, but there is no longer an eleventh available.

How much headroom is enough

Treat the inverter maximum as absolute. It is not a nominal figure with a hidden margin; exceeding it can break down the input stage, and manufacturers routinely deny warranty claims when the string calculation shows an overvoltage design. There is no benefit in landing at 599 V.

Five percent headroom is a reasonable working target, and it is not a code requirement. It absorbs module-to-module Voc tolerance, which is commonly ±3% on the datasheet, and a colder-than-design morning. The calculator flags anything below 5% so you make that call deliberately.

A high cold-morning Vmp is a production issue, not a hazard. If the operating voltage on a cold morning exceeds the MPPT upper limit, the inverter clamps its input and operates off the true maximum power point until the array warms up. You lose a little energy in the first hour of a cold clear day. That is a design trade-off worth making if it buys a longer string.

Short strings cost more than they look. Below the MPPT window the inverter produces nothing at all, but even well inside the window a low string voltage means higher current for the same power, which increases conductor losses and can push you into larger DC wire. Sizing that side of the system is covered in the solar panel array sizing calculator and the voltage drop calculator.

Check the balance-of-system ratings too. The corrected maximum voltage applies to conductors, DC disconnects, fuses, combiner boxes and the modules' own maximum system voltage rating, not just the inverter. A 1,000 V-rated module on a 600 V inverter is fine; a 600 V-rated component in a string calculated at 620 V is not.

Corrected Voc and maximum string length for common modules

Corrected Voc = Voc × [1 + (β/100)(Tmin − 25)]; maximum modules = floor(inverter limit ÷ corrected Voc).
Voc (STC)β (%/°C)Design TminCorrected VocMax in a 600 V stringMax in a 1000 V string
40.0 V−0.28−10 °C43.92 V1322
45.0 V−0.28−10 °C49.41 V1220
49.8 V−0.26−10 °C54.33 V1118
49.8 V−0.26−25 °C56.27 V1017
49.8 V−0.26−40 °C58.22 V1017
55.0 V−0.24−10 °C59.62 V1016
38.5 V−0.32−20 °C44.04 V1322

Note the third and fourth rows: the same module loses a whole position in the string purely because the site is 15 °C colder. Latitude changes string design more than module choice does.

Mistakes that put a string over voltage

  • Using average winter low instead of the extreme design minimum. The difference between a −5 °C average January low and a −25 °C extreme minimum is about 5% of string voltage, which is exactly the headroom most designs have.
  • Applying the coefficient of Pmax to Voc. The power coefficient is steeper than the voltage coefficient — typically −0.34 %/°C against −0.26 %/°C — so using it for the cold calculation overstates the maximum voltage and costs you a module per string.
  • Correcting Voc at cell temperature. At open circuit the module is near air temperature; adding a 25 °C rise to the cold case understates the voltage and defeats the purpose of the calculation.
  • Ignoring module tolerance. A ±3% Voc tolerance on a string calculated at 595 V of a 600 V limit means some strings ship over the limit.
  • Mixing module types in one string. Series-connected modules must share a current, so mismatched modules cost production; they also make the voltage calculation the sum of two different corrections rather than a multiple of one.
  • Assuming 1,000 V equipment is permitted on a house. NEC 690.7 restricts one- and two-family dwellings to 600 V maximum, with narrow exceptions. Commercial and utility systems routinely run 1,000 or 1,500 V.
  • Forgetting the DC conductors and disconnects. Every component in the DC circuit must be rated for the corrected maximum voltage, not for the STC sum.

What NEC 690.7 actually requires

Under the 2017 and later editions of NFPA 70, the maximum PV source and output circuit voltage is calculated as the sum of the parallel-connected modules' rated open-circuit voltage corrected for the lowest expected ambient temperature, using either the manufacturer's temperature coefficient or, for crystalline and multicrystalline silicon modules where the coefficient is not supplied, the correction factors published in the code. An alternative method based on an industry-standard engineering calculation is also permitted for systems of 100 kW or larger under the supervision of a licensed professional engineer. Adoption is by jurisdiction: confirm which edition your AHJ enforces before you finalise a string design.

String sizing among the other PV calculations

String voltage sizing is one of four independent constraints on a PV array, and satisfying it says nothing about the others.

Current and inverter capacity. The number of strings in parallel is set by the inverter's maximum input current per MPPT and by its DC-to-AC ratio, not by voltage. Most designs deliberately oversize the array 1.15 to 1.3 times the inverter's AC rating, because clipping a handful of peak hours a year costs less than the extra inverter capacity.

Conductor sizing. DC circuit conductors are sized from short-circuit current with the NEC 690.8 factors applied, then checked for voltage drop. That is a separate exercise from this one and is covered in the wire size and ampacity calculator.

Battery-coupled systems. If the array charges a battery through a charge controller rather than feeding a grid-tie inverter, the voltage window belongs to the controller, and an MPPT controller's maximum input voltage is corrected exactly the same way. The solar charge controller sizing calculator covers that case, and the inverter sizing calculator handles the AC side of an off-grid system.

Module-level electronics change the problem. Microinverters and DC optimisers put one or two modules on their own conversion stage, so the long-string voltage problem largely disappears — replaced by a per-device limit and a maximum number of units per branch circuit. If the roof has multiple orientations or partial shade, that architecture usually wins on production regardless of what the string arithmetic says.

Key terms

Voc
Open-circuit voltage — what a module produces with nothing connected. The highest voltage the module ever presents, and the basis of the NEC 690.7 maximum system voltage.
Vmp
Voltage at the maximum power point under load at standard test conditions. Roughly 80–85% of Voc for crystalline silicon, and the figure the MPPT window is compared against.
MPPT window
The input voltage range within which an inverter can track the array's maximum power point. Above it the inverter clamps; below it the inverter produces nothing.
STC
Standard test conditions: 1,000 W/m² irradiance, 25 °C cell temperature and air mass 1.5. Every datasheet figure used here is quoted at STC.
Temperature coefficient
The fractional change in a module parameter per degree Celsius away from 25 °C. Negative for voltage and power on silicon modules, slightly positive for short-circuit current.

Frequently asked questions

Why does string voltage go up when it gets cold?

Because a silicon cell's band gap widens slightly and its reverse saturation current falls as temperature drops, both of which raise open-circuit voltage. The effect is about 0.24 to 0.35 percent per degree Celsius for crystalline modules. At −25 °C a module is 50 degrees below its rating point, so it produces roughly 13 percent more open-circuit voltage than the datasheet number — enough to turn a compliant string into an over-voltage one.

What temperature should I use for the cold calculation?

The extreme annual mean minimum design dry-bulb temperature for the nearest weather station, which is the figure ASHRAE publishes and the one plan reviewers expect. It is not the average winter low and it is not the record low. If you cannot obtain it, using a record low is conservative — it produces a shorter string than necessary but never an unsafe one.

Do I use ambient or cell temperature?

Ambient for the cold Voc case, cell temperature for the hot Vmp case. At open circuit the module produces no power, dissipates nothing and therefore sits near air temperature. Under load it absorbs sunlight and converts only a fifth of it, so its cell temperature runs 20–30 °C above ambient depending on mounting and airflow.

What happens if the string voltage exceeds the inverter maximum?

The inverter's input stage can break down, and the failure typically happens on the first cold clear morning after commissioning rather than during the summer test. Manufacturers ask for the string calculation when assessing a warranty claim, and an over-voltage design is normally excluded. There is no partial consequence and no protective clamp on most equipment.

Can I mix string lengths on one inverter?

Only if each string has its own MPPT input, or if the strings are equal in length on a shared input. Strings of different lengths paralleled onto the same MPPT sit at a common voltage, so the shorter string is dragged off its maximum power point and the longer one is too. Many residential inverters have two or three independent MPPT inputs precisely so unequal roof faces can carry different string lengths.

Why is the residential limit 600 V?

NEC 690.7 restricts PV circuits on one- and two-family dwellings to 600 V maximum, with limited exceptions, on the grounds of firefighter and occupant exposure. Commercial rooftops and ground-mounted systems commonly run at 1,000 V, and utility-scale plants at 1,500 V, which is why the same module can be strung 18 deep on a warehouse and only 11 deep on a house.

My datasheet gives the Voc coefficient in mV/°C. How do I convert it?

Divide the millivolt figure by the module's Voc in millivolts and multiply by 100. A module with Voc = 49.8 V and a coefficient of −129.5 mV/°C works out to −129.5 ÷ 49,800 × 100 = −0.26 %/°C. Keep the sign negative when you enter it; a positive value tells this calculator the module gains voltage when heated, which silicon does not.

Does shading change the string voltage calculation?

Not the cold-morning maximum, which is an open-circuit condition unaffected by partial shade in any helpful direction. It does affect the operating voltage: a shaded module's bypass diode conducts and removes that module's contribution, dropping the string voltage by roughly a third of a module for each diode that activates. On heavily shaded roofs that can push a marginal string below the MPPT window, which is one of the strongest arguments for module-level electronics.

How much headroom should I design for below the inverter maximum?

Around five percent is a common working target, and it is a design convention rather than a code requirement. It covers the ±3% Voc tolerance most modules carry and a morning colder than the design minimum. If your climate data is solid and the modules are binned tightly, a smaller margin is defensible; if you are guessing at the design temperature, take more.

References