PowerAtlas.mx

Mexico · Wholesale market · MEM

Electricity prices in Mexico

Mexico does not have one electricity price. It has roughly 2,600 of them in any given hour, one at every pricing node on the grid, and CENACE recalculates every one of them each hour in each of two markets. This page explains what those prices are, who sets them, why they differ from one part of the country to another, and how to read the map that shows them.

Open the map Prices by state

What "the price of electricity" means here

The figures on this site are wholesale prices: what electricity costs at the point where it is injected into or withdrawn from the transmission network. They are quoted in Mexican pesos per megawatt-hour, written MXN/MWh. One megawatt-hour is a thousand kilowatt-hours, so a wholesale price of 1,500 MXN/MWh is 1.50 pesos per kWh of energy.

That is not the tariff a household or a business pays. A retail tariff is set separately and stacks transmission, distribution, supply and capacity costs, and in many cases a subsidy, on top of the energy component. Wholesale prices are the input, not the bill. They are the number that matters if you buy power under a contract indexed to the market, if you are evaluating where to site load, or if you are trying to understand what is happening to the cost of energy in Mexico before it reaches anyone's invoice.

Who sets the price

The Mexican wholesale electricity market, the Mercado Eléctrico Mayorista or MEM, has operated since 2016. It is administered by CENACE, the Centro Nacional de Control de Energía, which operates the national grid and clears the market. The legal framework was rewritten in 2025, when the Ley del Sector Eléctrico replaced the 2014 Ley de la Industria Eléctrica; the market's structure, its products and CENACE's role as system operator and market administrator continued under the new law.

Nobody quotes a price the way a shop sets a price. CENACE runs an optimisation that dispatches the cheapest available generation subject to the physical limits of the network, and the price at each location falls out of that calculation. It is the cost of supplying one more megawatt-hour at that specific point on the grid.

Two places can differ for either of two quite different reasons, and it is worth keeping them apart. Tijuana and Mérida differ because they are not on the same system: Tijuana sits in the Baja California system and Mérida in the national one, the two are not synchronously connected, and their prices come out of separate calculations that share nothing. Within a single system, prices differ for the second reason: the network. Congestion and losses are what the calculation charges for distance and for full wires.

PML and PND, the two prices you will see

TermFull nameWhat it is
PMLPrecio Marginal Local The price at a single pricing node, for one hour. Every node has one.
PNDPrecio en Nodo Distribuido The price CENACE publishes for a whole Load Zone, a demand-weighted average of the PMLs of the nodes inside it. It exists at Load Zone level only.

A PML has three components, and CENACE publishes them separately: energy, congestion and losses. The energy component is broadly common across a synchronised system. Congestion and losses are local, and they are where the geography comes from. When the transmission network cannot carry the cheapest available generation to a particular place, that place has to be served by something more expensive, and its price rises above the system's. Congestion is the price of a wire that is full.

The day-ahead market and the real-time market

The same energy is priced twice.

The two diverge whenever reality diverges from the forecast, and the size of that gap is itself informative. MTR is published with a lag of several days, so at any moment the day-ahead series runs closer to today than the real-time series does. The map carries both, and says on its face how current each one is.

Three systems, not one grid

Mexico is not one synchronised electrical system. It is three, and they are priced independently.

CodeSystemCovers
SINSistema Interconectado Nacional The national interconnected system, the great majority of the country and of demand.
BCASistema Interconectado Baja California The Baja California peninsula's northern system, interconnected with California rather than with the SIN.
BCSSistema Interconectado Baja California Sur Baja California Sur, an isolated system.

Because BCA and BCS are not synchronously connected to the SIN, a shortage or a price spike in one does not propagate to the others, and their price levels can sit persistently apart from the national picture. Any statement of the form "the price of electricity in Mexico" that does not say which system it means is hiding this.

Why prices differ across the country

Three things move a location's price relative to the system's:

Those effects are seasonal as well as geographic. Summer peaks in the north and the peninsula, hydrology in the south, and gas price moves that hit every system at once all show up in the same series.

How to read the map

The PowerAtlas map shows one number per area for whatever period you select, at six levels of geography:

The colour scale is fixed and absolute by default. A colour means the same price in every view, so two screenshots taken months apart can be compared by eye. A relative scale is available as an explicit opt-in, and when it is on the legend says so, precisely so that a cropped screenshot cannot mislead.

How every number on the map is produced is written out below, under Sources and methodology.

Prices by state

One page per federal entity, with the last twelve months, every year since 2018, and the load zones that have pricing nodes inside it. On the map, at state level, clicking a state opens its page.

Aguascalientes Baja California Baja California Sur Campeche Chiapas Chihuahua Coahuila Colima Durango Guanajuato Guerrero Hidalgo Jalisco Mexico City Michoacan Morelos Nayarit Nuevo Leon Oaxaca Puebla Queretaro Quintana Roo San Luis Potosi Sinaloa Sonora State of Mexico Tabasco Tamaulipas Tlaxcala Veracruz Yucatan Zacatecas

Where the data comes from

Prices come from CENACE's published web services: SW-PEND for zone PNDs and SW-PML for nodal PMLs, with the Catálogo de NodosP mapping nodes to geography. Boundaries come from INEGI's Marco Geoestadístico. The underlying data belongs to CENACE and INEGI and is redistributed here in aggregated form only.

The history runs from 1 January 2018 to the present, in both markets and across all three systems, and is extended daily by an automated load. Nothing is hand-entered.


Sources and methodology

All prices in MXN per MWh. The map's controls are labelled with CENACE's codes; the table under PML and PND above translates them.

The marginal price

This series exists at every level — municipality, load zone, control region, system and country — and at each one it is the mean of every price CENACE published at a pricing node inside that area, across every hour of the period. Nothing is weighted by demand or by population.

The average is therefore taken across nodes, not across places, and node density follows the shape of the grid rather than where people live. San Luis Potosí has 57 pricing nodes, the most of any municipality, and counts 57 times as heavily as each of the 433 municipalities that have exactly one. More than half of the 816 are in that second group.

At zone and region level the figure is approximate for a second reason: nodes are grouped by municipality first, and 8.5% of municipalities have nodes in more than one zone, so a few are counted in a zone they only partly belong to.

A municipality with no pricing node has no price and is drawn in grey. 816 of Mexico's 2,478 municipalities have one; the remaining 1,662 are left uncoloured rather than given a figure borrowed from the larger area around them. For a price covering those municipalities, use the load zone level.

The municipality level has a single series; the selector does not apply.

The demand-weighted price

CENACE publishes one price per load zone, weighted by demand across the pricing nodes inside it. It exists at load zone level only, and it is the figure CENACE publishes rather than one calculated here. Above load zone the map uses the marginal price, which counts every published observation exactly once.

Over any period longer than a day, the zone figure is the mean of the daily values CENACE published.

Colour scale

The FIXED scale is the default and the recommended one. Its seven classes are absolute and do not depend on what is on screen, so one colour always means the same price and any two views can be compared by eye.

The RELATIVE scale spreads the colours by quantiles of the data currently shown. It reveals differences within one view where the fixed scale looks almost uniform, which is the fixed scale behaving correctly in a quiet period, not a fault.

Where each class boundary falls depends on the data, so it moves with the date, the geography, the market and the series. That is why colours in a relative view cannot be compared with another view or with an earlier screenshot: the same colour can stand for very different prices. The legend's unit line reads "relative scale" precisely so a cropped screenshot still says so.

Seven classes are used wherever there are at least seven distinct values, and fewer where there are not. The Country level has a single value, so it cannot take a relative scale and is refused rather than approximated.

Data status

The table below is read live from the same database the map queries. If it is missing, the read failed and the page says nothing rather than showing a stale date.

The historical load starts on 1 January 2018.


Common questions

What is the price of electricity in Mexico?

There is no single number, and anyone who gives you one without saying which market, which system and which period they mean has thrown away most of the information. Open the map at country level for the national average over a period you choose, and at state level to see how far apart the country actually is.

Is this the same as my CFE bill?

No. This is the wholesale cost of energy. A retail tariff adds network, supply and capacity costs, and for most household users a subsidy sits between the two. Wholesale prices explain pressure on tariffs; they do not equal them.

Why is the real-time price missing for the last few days?

MTR is settled after the fact and published with a lag. The map states, per system and per market, the last date it holds, rather than filling the gap.

Can I use these numbers?

Yes. The site is free, needs no account, and every figure is traceable to a CENACE publication. If a number matters to a decision, take the underlying series from CENACE directly and cite it.