DK202124 min read

Tender for the Thor Offshore Wind Farm

Last updated 15 April 2026

Denmark — Thor Offshore Wind Farm Tender (2020–2021)

1. At a glance

Auction typeCombined concession + offtake CfD — one site, one winner, one 20-year price-premium CfD. Note: Danish primary sources describe this as a concession agreement with an associated model-licences framework (Annex 3.1-3.4), NOT as a "lease"; "combined leasing + offtake" in earlier drafts was a schema-label shorthand that does not track the primary-source terminology.
SiteNorth Sea, at least 22 km off the west Jutland coast per final DEA tender materials (earlier "~20 km" from preparatory legislative text is superseded). 286 km² after SEA narrowing from 440 km². Entirely within Nord Pool DK1 price area.
CapacityBidder-selected within a flexible 800–1,000 MW range
Awarding bodyDanish Energy Agency (Energistyrelsen)
Counterparty for the CfDThe Danish State (via DEA)
Political authorisationDanish Energy Agreement of 29 June 2018
Tender opened25 September 2020 (Contract Notice on EU TED)
Negotiation phase~April 2021 — with all 6 pre-qualified bidders
Final tender conditions24 June 2021 (after negotiation)
Final bid deadline8 November 2021
Winner announced1 December 2021 — by lottery, 11:00 at DEA offices
WinnerThor Wind Farm I/S (RWE AG + RWE Renewables GmbH + RWE Renewables Management UK Ltd)
Winning bid1,000 MW capacity at 0.01 øre/kWh — the legal minimum bid price
Contract term20-year two-way CfD
Concession term30 years + 5-year extension option (distinct from the CfD term)
Strike price indexationNone — bid-price fixed in current DKK, not indexed over 20 years
Reference priceNord Pool DK1 day-ahead hourly spot
Payment capsExplicit published caps per draft Concession Agreement §9.9: state payment cap DKK 6.5bn (2018 prices) and concessionaire payment cap DKK 2.8bn (2018 prices). Both caps adjusted yearly by the net price index (a Danish Statistics-published index, NOT generic CPI)
Grid connectionSplit responsibility — concessionaire builds the offshore substation, internal collection grid, and cable routing up to the Point of Connection (POC); Energinet establishes and owns the connection from POC to the 400-kV grid at Idomlund, must have the POC ready to receive the first kWh by no later than 1 January 2025 (CA §8.8, §10.3); §21 reserves a right for DEA to appoint Energinet to take over the onshore cable routing and nearshore substation before decommissioning. First Danish round where the concessionaire bears the offshore-grid capex.
Expected transfer to stateDKK 2.8 bn over contract life (state's estimate, announced with the winner)
Estimated total investmentDKK 15.5 bn
Grid connection windowOpens 1 January 2025; fully commissioned by end 2027
Headline significanceFirst Danish offshore wind tender resolved without state subsidy — a "payment to the state" outcome via the threshold-gated branch A award rule.

Sources (6 primary, all mirrored to B2): danish-tender-model-overview, tender-conditions, draft-concession-agreement, eu-state-aid-decision, dea-marketing-brochure, dea-news-page.


2. What makes Thor structurally different from AR6

This table is the core reason to do Thor as the second pilot — every row is a schema stress.

DimensionUK AR6DK Thor
Auction scopeOfftake only — leasing is a separate Crown Estate round years earlierCombined — seabed rights + construction licence + CfD premium in one tender
Number of winners per roundMany (133 contracts in AR6)One
Site modelTech-specific — developers bring their own sitesSite-specific — DEA identifies one site, bidders compete for it
Pre-tender environmental workDeveloper-led DCO + EIA completed before application (binary qualification gate)State-led SEA before tender opens; developer-led offshore EIA after award (2022–24)
StagesApplication → Assessment → (appeals) → Valuation → Sealed bid → AuctionApplication → Prequalification → Negotiation phase → Final tender conditions → Final bid → Evaluation → (lottery if tied)
Bid formatUp to 4 Flexible Bids per application, each at a different strike priceOne single binding bid-price per tenderer, 2 decimal places, must be > 0.00 øre/kWh
Bid capacityFixed — must not exceed Original Application capacityFlexible within 800–1,000 MW — bidders choose their own capacity in the range
EvaluationPay-as-clear within Pot / Maximum, competitive over multiple winnersLowest total expected subsidy cost over 20 years — single-winner selection, pay-as-bid
TiebreakerProcedural ordering by capacity, then random (Rule 19)Highest capacity first, then physical lottery supervised by independent auditor + Kammeradvokaten
Strike price indexationCPI-indexed annually, 2012 base yearNONE — bid-price fixed in nominal DKK for 20 years
Reference priceIntermittent Market Reference Price (IMRP) — hourly day-ahead indexNord Pool DK1 day-ahead hourly spot
Negative price ruleZero CfD payment for every settlement unit where IMRP < 0Premium discontinued for every hour where DK1 spot is non-positive (≤ 0)includes zero-price hours, not just negative
Production incentive asymmetryNone — if you produce, you pay if price > strikeConcessionaire's payment obligation lapses in any hour where DK1 spot < concessionaire's per-kWh payment, to preserve production incentive
Payment capsImplicit via the ASP ceiling; no explicit aggregate capExplicit caps on BOTH directions — state-pays-to-cap AND concessionaire-pays-to-cap
Contract term15 years (AR6; AR7 → 20)20 years
Concession termSame as contract term; no separate concession30 years + 5-year extension option, distinct from the 20-year CfD
Grid build responsibilityDeveloper builds, divests to OFTO via Ofgem tender post-commissioningConcessionaire builds and owns — offshore substation, landing cables, onshore substation all included in the award
AuthoritiesDESNZ + National Grid ESO + LCCC + GEMA/Ofgem (4 bodies, role-separated)DEA as contracting authority + counterparty; Energinet with material operational grid-connection/onshore-works role (per CA §8.6/§8.8/§10.3 — not just generic "TSO oversight"); Kammeradvokaten as state legal advisor; EC DG Competition as state-aid regulator
Applicant identityEstablished legal entities at application timeSeveral Thor applicants were "not-yet-established subsidiaries" — SPVs that would be formed only if they won
Bid directionPositive strike price; expected direction state→developerPositive strike price legally, but realised direction is concessionaire→state at typical market prices — an inverted payment flow from the same contract shape

Every row above forces at least one schema field or enum value. §11 summarises the aggregate schema implications.


3. Market context — the 2018 Energy Agreement and Denmark's pivot

Thor is the first of three offshore wind farms authorised by the Danish Energy Agreement of 29 June 2018 — a cross-party political settlement that explicitly committed Denmark to a "zero-subsidy" future for offshore wind by 2030. The Agreement set the template for Thor's two defining innovations:

  1. The concessionaire builds the grid connection (offshore substation, landing cables, onshore substation) — all previously built by state TSO Energinet at state cost. Shifting this capex to the concessionaire allowed DEA to run a tender where the competitive dimension could move past "lowest subsidy" toward "highest payment to state".
  2. Explicit two-sided payment caps — earlier Danish CfDs had implicit caps via strike price, but Thor's legislation added explicit DKK caps on both state-to-concessionaire and concessionaire-to-state aggregate payments. This gave both sides bounded exposure and made "payment to state" politically defensible.

Thor followed a sequence of Danish offshore wind tenders — Horns Rev 3 (2015, Vattenfall, 406.7 MW at ~77 øre/kWh), Kriegers Flak (2016, Vattenfall, 604 MW at 49.9 øre/kWh), and the Near-Shore Rounds (2018, Vattenfall, 350 MW) — that had already delivered "historically low prices internationally" per DEA. Each round had used Energinet-built grid connections and positive subsidy premiums. Thor was designed to go further: to be the tender where Denmark finally reached a zero-or-negative subsidy outcome at scale, by deliberately loading more cost onto the concessionaire.

At the time of Thor's final bid deadline in November 2021, European wholesale electricity prices were in the middle of an unprecedented spike (the "2021 energy crisis" driven by gas supply shortages and low wind generation across Europe). This context made the Thor result both extreme — all 5 lottery finalists bidding the legal floor of 0.01 øre/kWh — and unusually difficult to generalise to "normal" market conditions. At Dec 2021 forward prices, a 20-year contract at ~0 øre/kWh delivering 1,000 MW of capacity implied billions of DKK flowing from concessionaire to state. The DEA's announcement projected DKK 2.8 bn of expected transfers to the state over the contract life based on those conditions.


4. Timeline

Full structured chronology: ../source-docs/dk_thor/timeline.yaml. Abridged for this writeup:

DateEvent
29 Jun 2018Danish Energy Agreement signed — authorises Thor + 2 further rounds
13 May 2019Technical dialogue on site investigations (Copenhagen)
25 Nov 2019Market Dialogue conference (Copenhagen)
13 Mar 2020Grid connection design fixed — northern Tuskær landfall, Q1 2025 connection window
31 Mar 2020Prior Information Notice on EU TED
25 Sep 2020Contract Notice on TED + tender conditions published — tender formally opens, pre-qualification begins
1 Dec 2020Pre-qualification application deadline (6 applications received)
14 Jan 20216 consortia pre-qualified — SSE+CIP+Andel, Swan Wind (Eneco+European Energy), RWE, Total+Iberdrola, Vattenfall, Ørsted
1 Feb–29 Mar 20218-week public consultation on Plan for Thor + SEA
1 Mar 2021EC state aid approval (Decision SA.57858)
~Apr 2021Negotiation phase begins with the 6 bidders
30 May 2021DEA approves Plan for Thor + SEA; site narrowed to 286 km²
24 Jun 2021Final tender conditions published (post-negotiation)
1 Jul 2021Statutory executive orders enter force
8 Nov 2021Final bid deadline
25 Nov 2021DEA announces lottery required — multiple bidders tied at 0.01 øre/kWh + 1,000 MW
1 Dec 2021 11:00Lottery drawn — Thor Wind Farm I/S (RWE) wins. DKK 2.8 bn expected state transfer announced
~mid-Jan 2022Concession agreement signed (DEA's stated 4–6 week window)
2022–2024Offshore EIA conducted by concessionaire (post-award)
Q1 2025Grid connection window opens
End 2027Full commissioning deadline

Elapsed time summary:

  • Energy Agreement → Contract Notice: ~27 months
  • Contract Notice → Final bid: ~14 months
  • Final bid → Winner (via lottery): 23 days
  • Total from Energy Agreement to winner: ~3.5 years

(UK AR6's equivalent from Core Parameters to results was ~9.5 months — Denmark runs a much longer process, justified by the combined scope and the site-specific environmental work.)


5. CfD contract mechanics — delta from AR6

The Thor CfD has the same headline "two-way CfD" shape as the UK CfD (strike price, reference price, settlement against the difference) but differs in five load-bearing ways. Each is stated here as a specific delta against AR6 §5.

5.1 Strike price is fixed in nominal DKK, NOT indexed

The winning bid-price (0.01 øre/kWh for Thor) is a fixed nominal amount that applies across the entire 20-year contract. There is no CPI indexation, no re-basing, no annual adjustment. The EU State Aid Decision spells this out explicitly: "The offered bid price is a fixed amount in DKK/kWh (in current prices) and will not be indexed".

Implication for bidders: inflation over 20 years erodes the real value of the strike price linearly. At 2% annual inflation, a nominal 0.01 øre/kWh is worth ~0.0067 øre/kWh in real terms by year 20. For a "payment to state" direction, this benefits the concessionaire (obligation erodes). For a "state subsidy" direction, the opposite.

Contrast with UK AR6: strike prices are CPI-indexed annually from a 2012 base year, with re-basing formulae to accommodate ONS CPI revisions. Real-terms value is preserved.

5.2 Explicit payment caps on BOTH sides

Thor has two aggregate payment caps set in the concession agreement:

  • State payment cap: the maximum total net amount the Danish state will ever pay the concessionaire over the 20-year CfD term, before state subsidy stops.
  • Concessionaire payment cap: the maximum total net amount the concessionaire must ever pay the state, before the concessionaire's obligation stops and all further market revenue is retained.

Both caps are set in real 2018 DKK and inflation-adjusted annually via the net price index (a Danish Statistics-published index, NOT generic CPI) per draft Concession Agreement §9.9. The specific cap values are public: draft Concession Agreement §9.9 expressly sets the state payment cap at DKK 6.5bn (2018 prices) and the concessionaire payment cap at DKK 2.8bn (2018 prices). The bid price itself is NOT indexed (§9.3) — a deliberate asymmetry: the ceilings escalate with inflation while the bid price erodes in real terms over 20 years.

Why it matters: capped bidirectional exposure materially changes bidder risk calculus. In scenarios where market prices go extraordinarily high, the concessionaire is protected from an uncapped clawback; in scenarios where prices crash, the state is protected from an uncapped subsidy obligation. It turns the CfD into a corridor rather than an open-ended transfer, which is important at 20-year horizons.

Contrast with UK AR6: no explicit aggregate cap — the strike price itself acts as a permanent ceiling on the state's per-MWh subsidy, but total aggregate state exposure is unbounded (a generator producing more than expected simply receives more top-up). No symmetric cap on generator payback either.

5.3 Production-incentive asymmetric modification — the minimum settlement price

The draft Concession Agreement §9.8 establishes a minimum settlement price of 3 øre/kWh (2021 prices, net-price-index-adjusted) and defines a three-tier mechanism:

  1. In hours where DK1 spot price > annual payback owed by concessionaire: normal two-way CfD settlement applies — concessionaire pays the annual per-kWh payback to the state.
  2. In hours where DK1 spot price > 3 øre/kWh but the payback would reduce the concessionaire's net receipts below 3 øre/kWh: the payback is capped such that the concessionaire retains at least the minimum settlement price (3 øre/kWh). This is the "production-incentive" carve-out.
  3. In hours where DK1 spot price is AT OR BELOW the 3 øre/kWh minimum settlement price: the concessionaire's payment obligation lapses entirely for that hour.

Translation: Thor's asymmetric modification is not a generic "obligation lapses below payment size" rule — it's anchored to a specific 3 øre/kWh minimum settlement price. This preserves the production incentive in low-price hours and guarantees the concessionaire a floor real-terms per-kWh receipt above the minimum, regardless of how high the annual payback becomes.

Contrast with UK AR6: no equivalent mechanism. A UK CfD generator that produces in a high-reference-price period simply pays more to LCCC — there is no relief, even if the market price is extremely low.

5.4 Reference price — annual simple average, not per-settlement-unit

The Thor CfD premium is calculated annually as the simple average of the previous calendar year's hourly DK1 area spot prices (1 January to 31 December), NOT per settlement unit as the UK IMRP works. My earlier draft incorrectly said "weighted average"; the primary source says simple average. The premium is a fixed DKK/kWh value for the whole calendar year, recalculated once per year. Non-positive-price hours are included in the average calculation per §9.2. The UK IMRP is computed per half-hourly Settlement Unit and varies continuously. Note also that the payment settlement cadence is monthly in arrears per draft Concession Agreement §9.6 — the annual rate-setting does NOT imply annual cash flow; payments actually flow monthly between DEA and the concessionaire.

Implication: Thor's CfD has much less granular market-risk pass-through — the concessionaire is exposed to within-year market volatility between annual re-settings, which is a material difference over a 20-year term.

5.5 Negative price rule — inclusive of zero

Thor's CfD premium is discontinued for any hour where the DK1 day-ahead spot is non-positive. This is broader than the UK's rule, which applies only to negative IMRP hours — UK generators receive top-up even at £0/MWh, whereas Thor's concessionaire receives nothing at any hour where DK1 is at or below zero.

Why it matters: zero-price hours are becoming more common as renewables penetration increases. Over 20 years, Thor's broader rule excludes more hours from subsidy than the UK equivalent, with a compounding effect on expected revenue.


6. Bid structure, evaluation, and the lottery

6.1 Bid structure — two-phase submission vs UK single-round

Each pre-qualified bidder submits two tenders in sequence:

  • An initial tender (non-binding per §9.1 — "The bid-price in the initial tender is not binding, and will be treated with confidentiality") submitted at the start of the tender process, used as input to the negotiation phase and to surface bidder positions. Contains a single bid-price in DKK øre/kWh, maximum 2 decimal places, above 0.00, with a farm size between 800 and 1,000 MW.
  • A final tender (binding per §9.2) submitted after the negotiation phase closes and the final tender conditions are published. Same format as the initial tender but now legally binding as the basis of award.

No Flexible Bids, no alternative pricing, no phased structures. The single-price-single-capacity format is deliberate — it makes evaluation trivially mechanical and enables the threshold-gated award rule to be computed directly.

Contrast with UK AR6: up to 4 Flexible Bids per application, each at a different strike price, with up to 2 per Delivery Year, constrained by Rule 11.6 (see AR6 §8.4). The UK mechanics are built for a multi-winner competitive stack; Thor's mechanics are built for a single-winner selection.

6.2 Award criterion — threshold-gated branched rule

The tender conditions §7 label the award criterion simply as "Price", referring to Annex 3.9 for the full mechanics. The EU State Aid Decision SA.57858 ¶34-40 sets out the operative rule as a branched selection gated on a budget evaluation threshold:

(34) When evaluating the tenders, both the offered bid price per kWh and the total expected subsidy costs over the 20-year period are relevant, due to a budget evaluation threshold.

Bids below the budget evaluation threshold

(36) If the bid with the lowest offered price in "øre" per kWh amounts to total subsidy costs over the 20 year period, which are below the budget evaluation threshold of DKK 3.7 bn. (2018 prices), awarding is provided to the bidder who has offered the lowest price per kWh.

(37) Such a bid will automatically be accepted and will not require further approval from the parties to the Danish Energy Agreement 2018.

No bids below the budget evaluation threshold

(39-40) However, in the event that no bids results in total subsidy costs, which are within the budget evaluation threshold, the bid can still be accepted by the parties to the Energy Agreement 2018... the award criteria will be the lowest total expected subsidy costs over the 20-year period.

Branch A (below-threshold, applied in 2021): if the lowest-priced bid's total expected subsidy cost is below DKK 3.7bn, award goes to the lowest price per kWh and is automatically accepted. Tiebreak chain: same bid price → highest capacity → lottery (¶38).

Branch B (above-threshold, not triggered in 2021): if no bids clear the threshold, award goes to the lowest total expected subsidy cost and requires Energy Agreement party approval. Tiebreak chain: same subsidy cost → highest capacity → lottery (¶41).

For Thor 2021 specifically: every tied finalist bid at 0.01 øre/kWh × 1,000 MW = roughly €2bn expected subsidy cost over 20 years at contemporaneous forward prices, clearly below DKK 3.7bn. The auction therefore fell in Branch A, and the operative competitive criterion was lowest price per kWh (not "lowest total expected subsidy cost" as my earlier draft stated). Because all finalists bid at the 2-decimal legal minimum of 0.01 øre/kWh, the primary criterion failed to discriminate — hence the Branch A tiebreak chain was triggered, and because all finalists also bid the maximum 1,000 MW, the step-1 "highest capacity" rule also failed to discriminate, pushing the outcome to the physical lottery at step 2.

6.3 The tiebreaker and lottery — Denmark's most distinctive feature

The tender conditions following EU State Aid Decision §38 (Branch A tiebreak) set out a three-step tiebreaker:

  1. If bids have the same bid price per kWh (the operative Branch A criterion — not "same total expected subsidy cost" as my earlier draft said; that is the Branch B formulation), the bid with the highest capacity (MW) wins.
  2. If bids share the same bid price AND the same capacity, the winner is chosen by lottery.
  3. The lottery is supervised by an independent auditor and the Danish State's legal advisor (Kammeradvokaten) to ensure compliance with public procurement terms. Involved bidders are invited to attend in person for transparency. Press is excluded.

What happened in practice: official DEA sources say "more than one bidder" / "several bidders" offered the largest capacity at the minimum price and went to the lottery. My earlier draft said "widely reported as 5" — the specific number of finalists is not verified by the parsed primary DEA sources and is downgraded to "several". The lottery was drawn on 1 December 2021 at 11:00 at the DEA offices in Copenhagen.

The lottery procedure is described only in brief terms in the public tender documents; the full protocol (physical draw method, auditor role, witnessing) is not published. What is known:

  • All tied bidders received an invitation letter on 25 November 2021
  • The draw took place on 1 December 2021 at 11:00
  • An independent auditor and Kammeradvokaten attended
  • The involved bidders attended in person
  • The press was excluded
  • The winner was announced publicly the same day

Thor Wind Farm I/S (RWE) was drawn as the winner. Notable context: per the 14 January 2021 pre-qualification announcement, RWE's interests in Thor Wind Farm I/S were originally listed as "RWE Wind Holding A/S and RWE Offshore Wind A/S"; by the winner announcement on 1 December 2021, the stated interests had shifted slightly to "RWE AG, RWE Renewables GmbH, RWE Renewables Management UK Limited" — likely reflecting a corporate restructure within the RWE group between prequalification and final bid.

SSE Renewables publicly confirmed that they were a lottery finalist and lost. The other lottery losers' identities are not all individually confirmed in public sources, though industry coverage suggests the finalists included Copenhagen Infrastructure Partners (with SSE), Iberdrola/Total, Statkraft or Vattenfall, and possibly Ørsted — five out of six pre-qualified consortia.

6.4 Why this matters as a schema insight

UK AR6's Rule 19 tiebreaker is a procedural algorithm run by NESO against sealed bid data — deterministic given inputs, computerised. Thor's lottery is a physical, witnessed, in-person event with legal supervision and bidder attendance. The data model has to express both: the "procedural tiebreaker" versus "physical lottery" distinction is a real-world feature of auction design, not an implementation detail. Future auctions may use other tiebreakers (negotiated run-off, highest-capacity-then-bid-off, Vickrey second-price fallback) — the enum needs room to grow.


7. Post-award fate

As of early April 2026, Thor is in active construction preparation. Key milestones known from public sources:

  • 2022: Concession agreement signed between DEA and Thor Wind Farm I/S within DEA's stated 4–6 week window after the 1 December 2021 announcement — so mid-January to mid-February 2022.
  • 2022–2024: Offshore Environmental Impact Assessment conducted by the concessionaire for the specific project layout (as distinct from the SEA of the site plan which DEA had completed pre-tender).
  • 2023: European Investment Bank approved a green loan for Thor. The EIB project page confirms the "near zero" bid price mechanism and 1,000 MW capacity — a secondary confirmation of the core bid terms.
  • Q1 2025: Grid connection window opens; the concessionaire's tight construction schedule targets this date for first power.
  • End of 2027: Full commissioning deadline per the concession agreement.
  • No cancellation, withdrawal, or renegotiation has been publicly reported through April 2026. Unlike UK AR6's Hornsea 4 cancellation 9 months after award, Thor has held — partly because RWE has continued the project under the 30-year concession and partly because the "concessionaire pays state" structure means a walk-away would forfeit a valuable development right rather than just a subsidy stream.

8. The 2024 Danish tender failure — Thor's retrospective lens

Denmark's next major offshore wind tender round (the Nordsøen tender for up to ~6 GW across multiple sites in late 2024) received zero compliant bids. The failure has been widely attributed in Danish and European energy press to:

  1. The concessionaire-built grid connection model pushing capex onto developers who can no longer absorb it post-2021-2024 cost inflation
  2. Continued "pay to state" expectations after Thor, which required revenue projections far above realised 2024 wholesale prices
  3. Rising financing costs from 2022 onwards

This is Denmark's equivalent of the UK's AR5 failure — a tender that could not attract any bids because the regulatory ask and the economic reality had diverged. It has triggered Danish policy reconsideration in 2025 (specifics pending review of primary sources for a separate writeup).

Thor in retrospective: With 2024–2026 hindsight, Thor's headline "zero subsidy" result is looking like a one-off outcome driven by the extraordinary 2021 energy price spike rather than a durable equilibrium. The all-identical 0.01 øre/kWh bids were not the market's expression of sustainable economics — they were the legal floor hit by bidders racing to lock in a 20-year strike price against high forward prices. In normal conditions, that bid would have been irrational. In December 2021, it was arguably the only rational bid.

This is the same retrospective pattern we saw with UK AR6: an auction that looked like a great result at the moment of award subsequently revealed itself to be an edge-case outcome dependent on conditions that didn't persist. Hornsea 4 was cancelled because the cost curve moved against Ørsted; Denmark's 2024 tender collapsed because the cost curve moved against everyone. Both stories belong in the auction comparison surface.


10. Schema implications — delta from the AR6 analysis

AR6's §20 already specified a substantial ontology for auctions. Thor adds the following specific new fields, enums, and enum values that were either missing or too UK-shaped after AR6. This is the net contribution of the Thor writeup to the codification task.

New fields on auctions

  • auction_scope: enum {leasing_only, offtake_only, combined, amendment} — UK AR6 = offtake_only; Thor = combined
  • site: AuctionSite | None — nullable sub-object with site_name, boundary_geometry, area_km2, sea_area, price_zone, distance_from_shore_km, water_depth_range_m. Populated for site-specific tenders (Thor); null for tech-specific rounds (AR6)
  • expected_num_winners: {one, many} | int — Thor = one, AR6 = many (133)
  • bid_format: enum {single_price, flexible_bids_up_to_n, multi_criteria_score} — Thor = single_price; AR6 = flexible_bids_up_to_4
  • bid_capacity_model: enum {fixed_per_application, range_per_bid, fixed_across_all_winners} — Thor = range_per_bid (800–1000 MW chosen by bidder); AR6 = fixed_per_application
  • bid_price_precision: enum {int_mwh, one_decimal_mwh, three_decimal_mwh_pound, two_decimal_ore_kwh} — Thor = two-decimal øre/kWh; AR6 = three-decimal £/MWh
  • bid_price_floor: Money | None — Thor has a hard floor of > 0.00 øre/kWh (effectively 0.01 øre/kWh); AR6 has no floor
  • bid_price_ceiling: Money | None — AR6 has ASP ceiling per technology; Thor has no explicit ceiling (only the implicit floor)
  • strike_price_indexation: enum {none, cpi_annual, rpi_annual, labour_index, custom} — Thor = none; AR6 = cpi_annual
  • state_payment_cap: Money | None — Thor has a published cap; AR6 does not
  • state_payment_cap_indexation: enum | None — Thor = net_price_index_2018_base (NOT generic CPI — the Danish primary documents specifically use "net price index" per draft Concession Agreement §9.9); AR6 = null
  • concessionaire_payment_cap: Money | None — Thor has a cap; AR6 does not
  • concessionaire_payment_cap_indexation: enum | None — Thor = net_price_index_2018_base; AR6 = null
  • production_incentive_modification: str | None — Thor has the "obligation lapses in low-price hours" rule; AR6 has nothing
  • negative_price_threshold: enum {strictly_negative, non_positive, none} — Thor = non_positive (≤0); AR6 = strictly_negative (<0)
  • premium_calculation_cadence: enum {per_settlement_unit, annual, monthly, seasonal} — Thor = annual; AR6 = per_settlement_unit
  • contract_term_years: int — Thor = 20; AR6 = 15
  • operation_licence_term_years: int | None — Thor = 30 (sourced from the operation-phase licence/authorisation package per Annex 3.3 and Annex 3.4, NOT a standalone "concession term" clause — the concession agreement itself per §24 runs from signature until decommissioning, without a fixed year count); AR6 = null
  • operation_licence_extension_years: int | None — Thor = 5 (one-time prolongation of the operation licence); AR6 = null
  • grid_build_responsibility: enum {concessionaire, developer_then_ofto, state_tso, dno, split_concessionaire_to_poc_then_tso} — Thor = split_concessionaire_to_poc_then_tso (concessionaire builds offshore substation, internal collection grid, and cable routing to the POC; Energinet builds from POC to the 400-kV grid at Idomlund per §8.8, and §21 reserves DEA's right to appoint Energinet to take over the onshore cable routing and nearshore substation); AR6 = developer_then_ofto
  • negotiation_phase_included: bool — Thor = true; AR6 = false
  • environmental_assessment_model: enum {developer_eia_pre_application, state_sea_pre_tender_developer_eia_post_award, hybrid, none_required} — Thor = state_sea_pre_tender_developer_eia_post_award; AR6 = developer_eia_pre_application
  • political_authorisation: LegalInstrument | None — Thor references the 2018 Energy Agreement; AR6 has no equivalent single enabling agreement (the statutory authority is ongoing Energy Acts)

New enum values on AuctionEventType

From the Thor timeline that weren't in the AR6 timeline:

  • technical_dialogue — pre-PIN engagement with the market on technical issues
  • market_dialogue — formal market dialogue conference
  • prior_information_notice — EU TED PIN publication (non-binding)
  • contract_notice_published — EU TED Contract Notice (binding tender launch)
  • prequalification_application_deadline
  • prequalification_results_announced
  • negotiation_phase_begins
  • negotiation_phase_ends
  • final_tender_conditions_published — distinct from the original tender conditions in a round with a negotiation phase
  • final_bid_deadline
  • lottery_announced — DEA's 25 Nov 2021 announcement that a lottery would be needed
  • lottery_drawn — the physical lottery event itself
  • concession_agreement_signed
  • sea_public_consultation_begins
  • sea_approval
  • eia_public_consultation_begins (land-based)
  • eia_approval_land / eia_approval_offshore
  • grid_connection_design_decision
  • enabling_legislation_signed — the Energy Agreement
  • state_aid_approval — EU Commission decision

New tiebreaker_method enum values

  • procedural_ordering — UK Rule 19
  • highest_capacity_then_lottery — Thor
  • pure_lottery — for hypothetical auctions with no prior discrimination
  • negotiated_run_off — for hypothetical combined regimes
  • vickrey_second_price — for hypothetical sealed-bid variants

New AuctionAuthority role values

  • state_legal_advisor — Kammeradvokaten in Denmark; no UK equivalent
  • state_aid_regulator — European Commission DG Competition
  • scheme_owner_and_counterparty — combined role for regimes like Denmark where DEA plays both (distinct from UK's DESNZ + LCCC separation)

Relationships

  • Auction-group / auction-programme entity surfaced: the 2018 Danish Energy Agreement authorises Thor AND subsequent Nordsøen tenders; both should reference the same parent agreement. Consider adding an auction_programmes collection or an auction_programme_id: ObjectId field on auctions.
  • Applicant legal form — Thor allowed "not-yet-established subsidiary" applications; the auction_results.applicant_legal_form: enum {established_entity, spv_to_be_established, consortium} supports this.

Schema considerations that span both UK AR6 and Thor

  • Multiple "failure modes" — UK AR5 failed because ASP was too low; Denmark's 2024 Nordsøen failed because grid-build + cost inflation made economics unviable. Both need failure_mode taxonomy with free-text narrative.
  • Post-award project fate — Hornsea 4 cancellation pattern and (hopefully not) Thor withdrawal both live as events on the project record, not the auction record — confirmed from both writeups that this is the right level.
  • "Retrospective lens" on previously-celebrated outcomes — both AR6 (post-Hornsea 4) and Thor (post-2024 Nordsøen failure) have been re-evaluated after initial positive framing. The data model should support a retrospective_assessment field with versioning (like a changelog of the round's perceived value at different dates), or separate this as a deep_dive content layer per the AR6 §20.6 proposal.

Winners

Source documents