Low-voltage ride-through (LVRT) compared across 52 grid codes
LVRT is a lower boundary: stay connected while voltage is on or above it. This page puts every LVRT envelope in the dataset side by side — 52 codes across 41 countries — with the clause each one was read from. 3 more countries in the dataset carry no LVRT row, and this page separates the ones checked and found to define none from the ones nobody has established either way.
Part of: the grid-code ride-through chart — 66 standards in 44 countries, across all three events.
What this is, and is not. A reading aid compiled from the clauses cited in each row — not a compliance document. The primary text governs, and a code can bind a plant through requirements this envelope does not show. Every value is reproduced from the standard's own page, linked in the first column.
Every LVRT envelope in the dataset
Deepest retained voltage is the lowest point on the published envelope — the deepest sag the code requires a plant to ride through without tripping. It is read off the breakpoints in the same row, not quoted from the code, so treat it as a way to sort the table rather than as a value to put in a specification — the breakpoints are the published figure. Times are seconds from the start of the disturbance.
| Grid code | Country | Deepest retained voltage | Breakpoints | Status |
|---|---|---|---|---|
| Argentina (CAMMESA PT-4 Anexo I, Fig. Ai.1) | Argentina | 0 pu | 0.001s → 0 pu; 0.12s → 0 pu; 0.121s → 0.5 pu; 0.9s → 0.5 pu; 0.901s → 0.7 pu; 1s → 0.7 pu; 1.001s → 0.9 pu; 1200s → 0.9 pu; 1200.001s → 0.95 pu | verified |
| Australia (NER / AEMO) | Australia | 0 pu | 0.001s → 0 pu; 0.43s → 0.7 pu; 2s → 0.8 pu; 10s → 0.9 pu; 30s → 0.9 pu | verified |
| Austria (E-Control TOR Typ D) | Austria | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.85 pu; 2s → 0.85 pu | verified |
| Belgium (Federal Grid Code) | Belgium | 0 pu | 0.001s → 0 pu; 0.2s → 0 pu; ↗ 1.5s → 0.85 pu; 3s → 0.85 pu | verified |
| Brazil (ONS Submódulo 2.10) | Brazil | 0.2 pu | 0.001s → 0.2 pu; 0.5s → 0.2 pu; ↗ 1s → 0.85 pu; 5s → 0.85 pu; 5.001s → 0.9 pu | verified |
| California Rule 21 | US | 0 pu | 0.001s → 0 pu; 1s → 0 pu; 1.001s → 0.5 pu; 10s → 0.5 pu; 10.001s → 0.7 pu; 20s → 0.7 pu; 20.001s → 0.88 pu | verified |
| Canada (Alberta AESO) | Canada | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.45 pu; 0.3s → 0.45 pu; 0.301s → 0.65 pu; 2s → 0.65 pu; 2.001s → 0.75 pu; 3s → 0.75 pu; 3.001s → 0.9 pu | verified |
| Chile (NTSyCS) | Chile | 0 pu | 0.001s → 0 pu; 0.14s → 0 pu; ↗ 1s → 0.8 pu | verified |
| China (GB/T 36547-2024) | China | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.2 pu; 0.625s → 0.2 pu; ↗ 2s → 0.9 pu | verified |
| Colombia (CREG 060/2019) | Colombia | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 0.5s → 0.1 pu; ↗ 1.5s → 0.85 pu; 20s → 0.85 pu; 20.001s → 0.9 pu; 21s → 0.9 pu | verified |
| Denmark (TR 3.3.1) | Denmark | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.85 pu | verified |
| Ecuador (ARCONEL-001/24 Código de Conexión) | Ecuador | 0 pu | 0.001s → 0 pu; 0.25s → 0 pu; 0.251s → 0.25 pu; ↗ 1.5s → 0.85 pu; 3600s → 0.85 pu | verified |
| ERCOT (NOG 2.9.1.2 legacy) | US | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.75s → 0.9 pu | verified |
| ERCOT (NOG 2.9.1) | US | 0 pu | 0.001s → 0 pu; 0.32s → 0 pu; 0.321s → 0.095625 pu; ↗ 0.594444s → 0.25 pu; 1.2s → 0.25 pu; 1.201s → 0.5 pu; 3s → 0.5 pu; 3.001s → 0.7 pu; 6s → 0.7 pu; 6.001s → 0.9 pu | verified |
| Finland (Fingrid VJV2024) | Finland | 0 pu | 0.001s → 0 pu; 0.2s → 0 pu; ↗ 1.5s → 0.85 pu; 10s → 0.85 pu; 10.001s → 0.9 pu | verified |
| France (RTE) | France | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.85 pu | verified |
| Greece (ADMIE/IPTO RfG) | Greece | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.85 pu; 3s → 0.85 pu | verified |
| IEEE 1547-2018 Cat III | US | 0 pu | 0.001s → 0 pu; 1s → 0 pu; 1.001s → 0.5 pu; 10s → 0.5 pu; 10.001s → 0.7 pu; 20s → 0.7 pu; 20.001s → 0.88 pu | verified |
| IEEE 2800-2022 | US | 0 pu | 0.001s → 0 pu; 0.32s → 0 pu; 0.321s → 0.25 pu; 1.2s → 0.25 pu; 1.201s → 0.5 pu; 3s → 0.5 pu; 3.001s → 0.7 pu; 6s → 0.7 pu; 6.001s → 0.9 pu | verified |
| India (CEA Connectivity Regs) | India | 0.15 pu | 0.001s → 0.15 pu; 0.3s → 0.15 pu; ↗ 3s → 0.85 pu; ↗ 10s → 0.9 pu | verified |
| Ireland (EirGrid) | Ireland | 0.15 pu | 0.001s → 0.15 pu; 0.625s → 0.15 pu; ↗ 3s → 0.9 pu | verified |
| Italy (TERNA) | Italy | 0 pu | 0.001s → 0 pu; 0.2s → 0 pu; ↗ 2s → 0.85 pu | verified |
| Kenya (KNTGC VRPP) | Kenya | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 2s → 0.85 pu; 3s → 0.85 pu; 3.001s → 0.9 pu; 4s → 0.9 pu | verified |
| Malaysia (Grid Code Additional Code 2025) | Malaysia | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.9 pu; 5s → 0.9 pu | verified |
| Mexico (Codigo de Red) | Mexico | 0 pu | 0.001s → 0 pu; 0.25s → 0 pu; 0.35s → 0 pu; 0.45s → 0 pu; ↗ 1.05s → 0.45 pu; ↗ 1.5s → 0.9 pu | verified |
| NERC PRC-024-4 (no-trip) | US | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.45 pu; 0.3s → 0.45 pu; 0.301s → 0.65 pu; 2s → 0.65 pu; 2.001s → 0.75 pu; 3s → 0.75 pu; 3.001s → 0.9 pu; 4s → 0.9 pu | verified |
| NERC PRC-029-1 (IBR) | US | 0 pu | 0.001s → 0 pu; 0.32s → 0 pu; 0.321s → 0.25 pu; 1.2s → 0.25 pu; 1.201s → 0.5 pu; 3s → 0.5 pu; 3.001s → 0.7 pu; 6s → 0.7 pu; 6.001s → 0.9 pu | verified |
| NERC PRC-029-1 (Table 1: AC-connected wind IBR /…) | US | 0 pu | 0.001s → 0 pu; 0.16s → 0 pu; 0.161s → 0.25 pu; 1.2s → 0.25 pu; 1.201s → 0.5 pu; 2.5s → 0.5 pu; 2.501s → 0.7 pu; 3s → 0.7 pu; 3.001s → 0.9 pu | verified |
| Netherlands (TenneT) | Netherlands | 0 pu | 0.001s → 0 pu; 0.25s → 0 pu; ↗ 3s → 0.85 pu | verified |
| New Zealand North Island (EIPC cl 8.25A) | New Zealand | 0 pu | 0.001s → 0 pu; 0.14s → 0 pu; 0.141s → 0.14 pu; ↗ 0.5s → 0.35 pu; 0.501s → 0.57 pu; ↗ 0.65s → 0.59 pu; ↗ 1.3s → 0.76 pu; 3s → 0.76 pu; 3.001s → 0.9 pu; 6s → 0.9 pu | verified |
| New Zealand South Island (EIPC cl 8.25A) | New Zealand | 0 pu | 0.001s → 0 pu; 0.14s → 0 pu; 0.141s → 0.14 pu; ↗ 0.5s → 0.35 pu; 0.501s → 0.76 pu; 3s → 0.76 pu; 3.001s → 0.9 pu; 6s → 0.9 pu | verified |
| Nigeria (TCN Grid Code) | Nigeria | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 2s → 0.85 pu; 20s → 0.85 pu | verified |
| Norway (Statnett NVF 2025) | Norway | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.9 pu | verified |
| Panama (Código de Redes Fotovoltaico 2017) | Panama | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 2.2s → 0.9 pu; 7s → 0.9 pu | verified |
| Peru (COES PR-20, Anexo 1 Cap. 4) | Peru | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 0.65s → 0.2 pu; ↗ 3s → 0.85 pu; ↗ 180s → 0.95 pu | verified |
| Philippines PV (PGC 2016 Fig 4.4) | Philippines | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.3 pu; 0.6s → 0.3 pu; ↗ 3s → 0.9 pu; 6s → 0.9 pu | verified |
| Philippines Wind (PGC 2016 Fig 4.2) | Philippines | 0.2 pu | 0.001s → 0.2 pu; 0.625s → 0.2 pu; ↗ 3s → 0.9 pu; 6s → 0.9 pu | verified |
| Poland (PSE Wymogi 2025) | Poland | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 2.5s → 0.85 pu; 5s → 0.85 pu | verified |
| Quebec (Hydro-Quebec D-2022-088) | Canada | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1s → 0.25 pu; 1.001s → 0.75 pu; 2s → 0.75 pu; 2.001s → 0.85 pu; 30s → 0.85 pu; 30.001s → 0.9 pu | verified |
| Romania (Transelectrica/ANRE storage norm) | Romania | 0 pu | 0.001s → 0 pu; 0.25s → 0 pu; ↗ 3s → 0.85 pu; 3600s → 0.85 pu | verified |
| Saudi Arabia (SAGC) | Saudi Arabia | 0 pu | 0.001s → 0 pu; 0.3s → 0 pu; ↗ 1.3s → 0.8 pu; 1.301s → 0.9 pu; 1800s → 0.9 pu; 1800.001s → 0.95 pu | verified |
| South Africa (NRS 097 / RPP) | South Africa | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 2s → 0.85 pu; 20s → 0.85 pu; 20.001s → 0.9 pu; 60s → 0.9 pu | verified |
| South Korea (KEPCO) | South Korea | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.5 pu; 0.16s → 0.5 pu; 0.161s → 0.7 pu; 1.5s → 0.7 pu; 1.501s → 0.9 pu | verified |
| Spain (P.O. 12.3) | Spain | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.85 pu | verified |
| Sri Lanka (CEB) | Sri Lanka | 0 pu | 0.001s → 0 pu; 0.14s → 0 pu; ↗ 1.2s → 0.8 pu; 2.5s → 0.8 pu; 2.501s → 0.85 pu; 180s → 0.85 pu; 180.001s → 0.9 pu; 600s → 0.9 pu | verified |
| Sweden (EIFS 2018:2) | Sweden | 0 pu | 0.001s → 0 pu; 0.2s → 0 pu; ↗ 2s → 0.85 pu; 10s → 0.85 pu; 10.001s → 0.9 pu | verified |
| Switzerland (Swissgrid CESS minimum…) | Switzerland | 0 pu | 0.001s → 0 pu; 0.2s → 0 pu; ↗ 1.5s → 0.85 pu; 60s → 0.85 pu | verified |
| Taiwan (TPC) | Taiwan | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 3s → 0.9 pu; 4s → 0.9 pu | verified |
| Turkey (TEİAŞ Şebeke Yönetmeliği Ek-18) | Turkey | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; ↗ 1.5s → 0.9 pu; 2s → 0.9 pu | verified |
| UK G99 (Type A-C) | UK | 0.1 pu | 0.001s → 0.1 pu; 0.14s → 0.1 pu; ↗ 2.2s → 0.85 pu; 180s → 0.85 pu | verified |
| UK G99 (Type D) | UK | 0 pu | 0.001s → 0 pu; 0.14s → 0 pu; ↗ 2.2s → 0.85 pu; 180s → 0.85 pu | verified |
| Vietnam BESS (Circular 05/2025/TT-BCT Art. 44) | Vietnam | 0 pu | 0.001s → 0 pu; 0.15s → 0 pu; 0.151s → 0.3 pu; 0.6s → 0.3 pu; ↗ 3s → 0.9 pu; 10s → 0.9 pu | verified |
Last checked against the source documents on .
Countries with no LVRT envelope here
3 countries appear in this dataset for another event but carry no LVRT row. Those are two different situations, and conflating them would turn a research backlog into a claim — so they are separated.
Not established either way
No LVRT row here, and no finding that the code lacks one. The honest statement is that we have not established it — go to the code itself rather than reading this list as evidence of absence.
Germany · Morocco · Singapore
The reasoning for every checked absence, code by code, is on the grid codes with no ride-through curve.
The other two obligations
LVRT, HVRT and FRT are three separate duties. A code can define one and not the others, and meeting one says nothing about the other two.
- High-voltage ride-through (HVRT)33 envelopes in the dataset, plotted against per-unit voltage.
- Frequency ride-through (FRT)45 envelopes in the dataset, plotted against frequency in hertz.