Denmark's wind turbines will not be a rare earth mine
Denmark's wind fleet holds 124 tonnes of neodymium, and half of it sits in turbines I first assumed contained none. A material flow model.
The intuitive story about wind power and critical materials goes like this. Wind turbines need powerful magnets, powerful magnets need neodymium and dysprosium, those elements come almost entirely from China, and therefore a country building a lot of wind is building a lot of exposure. The corollary is comforting: when those turbines come down, the magnets come back, and a domestic recycling stream reduces the exposure.
I wanted to check the second half of that on a country where the data actually exists. Denmark keeps a public register of every grid-connected wind turbine in the country, and, unusually, a second register of every turbine already taken down, with the date it went. That is enough to build a dynamic material flow analysis rather than an estimate.
The answer is that Denmark’s wind fleet is not going to be a rare earth mine. It will be a very large steel mine, the two flows do not arrive at the same time, and getting there required me to correct an assumption that had doubled the wrong way.
The method, briefly
Material flow analysis is mass balance with the system boundary drawn around a country instead of a reactor. Input equals output plus accumulation. The dynamic version tracks material by the year it entered service, and lets it leave according to how long things actually last, which makes it possible to project rather than only describe.
Three ingredients: what went in and when, how long it lasts, and how much material is in it. The Danish register supplies the first. The second and third are where the work is.
First problem: turbine lifetime is not what the obvious calculation says
The decommissioning register records 3,280 turbines with both a connection date and a removal date. Averaging their lifetimes gives 17.8 years.
That number is wrong, and it is wrong in a way that looks entirely reasonable. It only counts turbines that have already been removed. A turbine connected in 1995 and still spinning in 2019 has lasted at least 24 years, and it contributes nothing at all to that average, because it has not finished yet. The calculation systematically ignores the long-lived machines. It is measuring the average age at death of everyone in the graveyard and calling it life expectancy.
The fix is standard, borrowed from survival analysis: count every turbine, and treat the ones still standing as censored observations that contribute to the risk set up to their current age and then drop out. Across all 9,537 turbines, the Kaplan-Meier median lifetime is 23.2 years. A Weibull fitted to the same censored data by maximum likelihood gives 24.0 years, with a shape parameter of 3.20, which is above one and therefore says turbines wear out with age rather than failing at random. That is the physically sensible result, and the agreement between the two estimates is what makes it safe to extrapolate past the oldest observed retirement.
So the correction runs in the opposite direction to the one the naive figure suggested. Danish turbines last longer than the twenty-year convention common in the literature, not shorter.
| naive mean of retirements only | 17.8 years |
| Kaplan-Meier median, all turbines | 23.2 years |
| Weibull median, fitted | 24.0 years |
Five years of difference in the lifetime moves the entire retirement wave by five years. A country sizing recycling capacity for 2035 that actually arrives in 2040 has built the wrong thing at the wrong time.
Second problem: I assumed geared turbines contained no rare earth
Rare earth content is not a function of turbine size. It is a function of how the generator is built, and the four designs differ enormously.
- Geared, using a doubly-fed induction generator. A gearbox steps rotor speed up to a conventional generator. No permanent magnet in the drivetrain.
- Direct-drive with a permanent magnet generator. No gearbox; the generator turns at rotor speed, so it has to be large, and it needs a great deal of neodymium-iron-boron.
- Direct-drive with an electrically excited rotor, Enercon’s design. No gearbox and no magnets.
- Medium-speed hybrid, a short gearbox plus a permanent magnet generator.
The register names the model of every turbine, and model designations give the topology away.
Siemens SWT-3.2-113 DD is direct drive. Everything else Siemens installed in Denmark is geared.
| generator topology | capacity | share of fleet |
|---|---|---|
| geared | 5,489 MW | 89.6% |
| medium-speed permanent magnet | 432 MW | 7.1% |
| direct-drive permanent magnet | 202 MW | 3.3% |
| direct-drive electrically excited | 0 MW | 0% |
Here is where I got it wrong. Having established that geared machines have no permanent magnet in the drivetrain, I set their rare earth content to zero. That is a reasonable-sounding inference and it is false.
The JRC’s published intensity table gives a geared doubly-fed induction turbine 12 kg of neodymium per megawatt. Not from the generator, from auxiliary magnets: pitch systems, yaw motors, small permanent magnet components scattered through the machine. Against 180 kg/MW for direct drive it looks negligible, and across a fleet that is 89.6 per cent geared it is not.
Correcting it roughly doubles the answer:
| element | in service |
|---|---|
| neodymium | 124 t (76 to 172) |
| dysprosium | 16 t |
| praseodymium | 8.8 t |
| terbium | 1.8 t |
More than half of Denmark’s wind neodymium sits in geared turbines, the ones I had written off.
That relocation matters more than the total. Rare earth held in 63 direct-drive generators is concentrated: a decommissioning crew can pull out a large magnet assembly and send it for reprocessing. The same tonnage spread across 6,142 machines in pitch and yaw components is not recoverable in any practical sense. It goes to scrap with the nacelle.
What actually comes back
Projecting each turbine forward under its own conditional survival curve, and multiplying retiring capacity by the sourced intensities, gives the flows to 2050.
| material | recovered by 2050 |
|---|---|
| concrete | 2,323,000 t |
| steel | 639,000 t |
| copper | 8,000 t |
| neodymium | 113 t |
| dysprosium | 15 t |
Steel to neodymium is a mass ratio of about 5,700 to 1. Neodymium recovery averages 3.6 tonnes a year and peaks at 4.6. No recycling industry gets built on that, and the dispersal makes the point firmer rather than softer.
This is not an argument that turbine magnet recycling is pointless in general. It is an argument that Denmark’s own retiring fleet cannot be the source, because of what Denmark happened to build. A country whose fleet is mostly direct-drive would get a different answer from the same model.
Meanwhile the bulk metals are a genuine secondary resource. Six hundred thousand tonnes of steel is worth planning for.
The result I did not expect
The composition of the waste stream changes over time.
| flow | peaks in |
|---|---|
| steel | 2029 |
| copper | 2030 |
| neodymium | 2037 |
Eight years apart. The reason is straightforward once seen: the magnet-bearing turbines are the newest, so they retire last. Denmark’s bulk decommissioning wave is an old-fleet phenomenon arriving around 2029, and its rare earth trickle is a separate, later event.
A static stock estimate cannot show this. It falls out only from tracking cohorts through time, which is the entire reason for doing material flow analysis dynamically instead of as a snapshot.
Where the numbers come from, and why that matters
Every material coefficient in this analysis now comes from Table 1 of the JRC’s Material requirements for wind turbines (JRC139701, 2024), itself built on Carrara et al. (2020).
They did not to begin with. The first version of this work carried numbers I had assembled from general reading: an assumed magnet mass per megawatt, an assumed rare earth fraction within the magnet, and the assumption that geared turbines contained none. Two of those three were close to the published values. The third was wrong, and it was the one that mattered.
Replacing all three changed every headline figure in this article:
| first version | sourced | |
|---|---|---|
| neodymium to 2050 | 51.9 t | 112.8 t |
| dysprosium to 2050 | 5.6 t | 15.0 t |
| steel to 2050 | 1,108,000 t | 639,000 t |
| copper to 2050 | 31,700 t | 8,000 t |
The conclusion held. Everything underneath it moved, and steel and copper moved down as far as neodymium moved up. A model can be perfectly reproducible and still be wrong, if the coefficients going into it are recalled rather than cited. Reproducibility is a property of the pipeline; correctness is a property of the inputs, and they are not the same virtue.
What I would not claim
The register ends in 2019, so the stock is understated and Danish capacity has grown since. Repowering is not separated from retirement, which means a turbine replaced by a larger one on the same site counts as a release here even though the site stays in service. Material intensities come from published literature rather than measurement and are carried as ranges. And bulk intensity is held constant across forty years of vintages, which is the largest untested assumption in the steel and concrete figures; a 1995 turbine and a 2019 turbine do not have the same kilograms per megawatt.
None of those change the headline. The gap between a million tonnes and fifty tonnes is not an uncertainty-band problem.
Why this was worth doing
Two of the three numbers that matter most in this analysis are ones you would ordinarily assume rather than measure: how long a turbine lasts, and how much magnet is in it. Assume twenty years and a uniform rare earth intensity, and you get a fleet retiring too early and holding several times too much neodymium. Both assumptions are reasonable-sounding. Both are wrong for Denmark, and the second is wrong by roughly a factor of ten.
The data to check them was public the whole time.
The code, the data and every figure are on GitHub at github.com/ibtisamkhan96/dk-wind-mfa. The turbine register is from Energistyrelsen, the Danish Energy Agency, mirrored by DTU at doi:10.11583/DTU.7599698.v2 under CC BY 4.0.
Found a mistake? Good, tell me. This publication flags its own suspect values. Reach me on LinkedIn.