<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Capex on lo0 — Tech Blog</title><link>https://blog.lo0.es/en/tags/capex/</link><description>Recent content in Capex on lo0 — Tech Blog</description><generator>Hugo -- gohugo.io</generator><language>en</language><lastBuildDate>Tue, 16 Jun 2026 06:00:00 +0200</lastBuildDate><atom:link href="https://blog.lo0.es/en/tags/capex/index.xml" rel="self" type="application/rss+xml"/><item><title>Full TCO of an on-premise GPU cluster: from capex to the all-in €/GPU-hour and the break-even against cloud</title><link>https://blog.lo0.es/en/posts/full-tco-on-premise-gpu-cluster-capex-gpu-hour-break-even/</link><pubDate>Tue, 16 Jun 2026 06:00:00 +0200</pubDate><guid>https://blog.lo0.es/en/posts/full-tco-on-premise-gpu-cluster-capex-gpu-hour-break-even/</guid><description>&lt;blockquote>
&lt;p>Notation: amounts in &lt;strong>N €&lt;/strong> or &lt;strong>N USD&lt;/strong> (source denominated in dollars); decimal point; comma as thousands separator. The dollar sign is not used (it is the formula delimiter). Data centred on Europe/Spain. Generic example hardware: a cluster of N nodes, each with 4×H100 SXM5 80 GB.&lt;/p>
&lt;/blockquote>
&lt;h2 id="tldr">TL;DR&lt;/h2>
&lt;p>A 4×H100 SXM5 node costs between &lt;strong>150,000 USD and 200,000 USD&lt;/strong> in total capex (GPUs + server + network + storage + prorated rack). Amortised over 3 years with European opex (energy at ~0.116 €/kWh industrial, PUE 1.54 average or 1.2 with liquid, 0.3 FTE of staff), the &lt;strong>all-in&lt;/strong> cost ranges from &lt;strong>3.10 USD/GPU-hour&lt;/strong> (100 % utilisation) to &lt;strong>6.20 USD/GPU-hour&lt;/strong> (50 % utilisation). The break-even against AWS p5 on-demand (~6.88 USD/GPU-hour) is crossed at around &lt;strong>70 % utilisation&lt;/strong>; against a neocloud 3-year reserved (~1.49–2.10 USD/GPU-hour), on-prem never closes the gap in that scenario. Utilisation is the variable that decides the cost axis, not the price of the hardware.&lt;/p>
&lt;hr>
&lt;h2 id="the-model-declared-assumptions">The model: declared assumptions&lt;/h2>
&lt;p>Every calculation below starts from these assumptions. Changing any of them moves the conclusion; the sensitivity section quantifies by how much.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Parameter&lt;/th>
&lt;th>Base value&lt;/th>
&lt;th>Sensitivity range&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Node&lt;/td>
&lt;td>4×H100 SXM5 80 GB (HGX baseboard)&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Cluster&lt;/td>
&lt;td>N nodes (per-node model; scales linearly)&lt;/td>
&lt;td>1–32 nodes&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Capex amortisation&lt;/td>
&lt;td>3 years (straight line)&lt;/td>
&lt;td>3–5 years&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>GPU utilisation&lt;/td>
&lt;td>70 %&lt;/td>
&lt;td>30 %–100 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Energy price&lt;/td>
&lt;td>0.116 €/kWh (industrial Spain, Sept. 2025)&lt;/td>
&lt;td>0.06–0.20 €/kWh&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>PUE&lt;/td>
&lt;td>1.54 (global average, Uptime Institute 2025)&lt;/td>
&lt;td>1.15–1.80&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Exchange rate&lt;/td>
&lt;td>1 USD = 0.93 € (reference Jun. 2026)&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Energy source: &lt;a href="https://www.globalpetrolprices.com/Spain/electricity_prices/">GlobalPetrolPrices · Spain Business Electricity, Sept. 2025&lt;/a>. PUE source: &lt;a href="https://datacenter.uptimeinstitute.com/rs/711-RIA-145/images/2025.Annual.Survey.Report.pdf">Uptime Institute Global Data Center Survey 2025&lt;/a> — the global average PUE has been stuck at 1.54 for the sixth consecutive year; hyperscalers 1.10–1.15; colocation/enterprise 1.58–1.80; facilities less than 5 years old, 1.48. PUE 1.2 is achievable with direct-to-chip liquid cooling.&lt;/p>
&lt;/blockquote>
&lt;hr>
&lt;h2 id="capex-breakdown-per-4h100-sxm5-node">Capex breakdown per 4×H100 SXM5 node&lt;/h2>
&lt;h3 id="gpus">GPUs&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Component&lt;/th>
&lt;th>Unit price (USD)&lt;/th>
&lt;th>Quantity&lt;/th>
&lt;th>Subtotal (USD)&lt;/th>
&lt;th>Source and date&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>H100 SXM5 80 GB (card)&lt;/td>
&lt;td>30,000–40,000&lt;/td>
&lt;td>4&lt;/td>
&lt;td>120,000–160,000&lt;/td>
&lt;td>&lt;a href="https://www.gmicloud.ai/en/blog/nvidia-h100-gpu-pricing-2026-rent-vs-buy-cost-analysis">GMI Cloud, Apr. 2026&lt;/a> · &lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>The range reflects market variability and volume discounts (5–15 % for orders above 50 units). H100 SXM5 cards require NVIDIA&amp;rsquo;s &lt;strong>HGX baseboard&lt;/strong>; they are not sold loose for direct installation in standard servers.&lt;/p>
&lt;h3 id="server--hgx-baseboard">Server / HGX baseboard&lt;/h3>
&lt;p>A complete 4×H100 SXM node uses NVIDIA&amp;rsquo;s &lt;strong>HGX H100 4-GPU baseboard&lt;/strong> plus a compatible host server. Reference models: Supermicro SYS-421GU-TNXR (4U, dual Intel Xeon 4th Gen, HGX H100 4-GPU) and its Dell equivalent.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Component&lt;/th>
&lt;th>Estimated cost (USD)&lt;/th>
&lt;th>Note&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Server chassis + CPU (2× Xeon) + RAM (512 GB DDR5) + redundant PSU&lt;/td>
&lt;td>18,000–25,000&lt;/td>
&lt;td>Based on a Supermicro SYS-821GE bare without GPUs at ~24,806 USD (&lt;a href="https://www.xicomputer.com/Solutions/Data-Center-Servers/SYS-821GE-TNHR.asp">xicomputer.com&lt;/a>, Jun. 2026); scaled to the 4-GPU&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>HGX H100 4-GPU baseboard&lt;/td>
&lt;td>included in the GPU price&lt;/td>
&lt;td>NVIDIA HGX platform; no separate public price&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Inter-GPU NVLink (inside the node)&lt;/td>
&lt;td>included in the baseboard&lt;/td>
&lt;td>4 GPUs connected by NVLink 4.0 on the HGX baseboard&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Marketing claim (no independent verification): Supermicro announces datacenter energy cost reductions of up to 40 % with liquid cooling in its HGX H100 servers (&lt;a href="https://www.supermicro.com/en/pressreleases/supermicro-launches-industrys-first-nvidia-hgx-h100-8-and-4-gpu-h100-servers-with-liquid-cooling">Supermicro press release&lt;/a>).&lt;/p>
&lt;/blockquote>
&lt;h3 id="infiniband-ndr-network">InfiniBand NDR network&lt;/h3>
&lt;p>For a multi-node cluster with tensor parallelism across nodes, the GPU-to-GPU network is critical. NDR InfiniBand (400 Gb/s per port) is the de facto standard for HGX clusters.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Component&lt;/th>
&lt;th>Estimated cost per node (USD)&lt;/th>
&lt;th>Source / Note&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>NVIDIA Quantum-2 NDR 400G switch (64 ports, prorated across N nodes)&lt;/td>
&lt;td>2,000–4,000&lt;/td>
&lt;td>Switch ~35,000 USD (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>); at 16 nodes, ~2,200 USD/node&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>InfiniBand NDR cables/transceivers (4 ports per node × ~1,000 USD/port)&lt;/td>
&lt;td>4,000&lt;/td>
&lt;td>Estimate based on ~1,000 USD per optical transceiver (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>InfiniBand network (prorated per 4-GPU node)&lt;/strong>&lt;/td>
&lt;td>&lt;strong>~6,000–8,000&lt;/strong>&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>For inference serving inside a single node (4 GPUs with NVLink), the inter-node network is less critical than for multi-node training. For disaggregated prefill-decode workloads spread across nodes, InfiniBand NDR is necessary.&lt;/p>
&lt;/blockquote>
&lt;h3 id="nvme-storage">NVMe storage&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Component&lt;/th>
&lt;th>Estimated cost (USD)&lt;/th>
&lt;th>Note&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Local NVMe (4 TB × 2 U.2/E1.S drives, working datasets and checkpoints)&lt;/td>
&lt;td>2,000–4,000&lt;/td>
&lt;td>~500–1,000 USD/TB enterprise NVMe, 2025&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Shared object storage (NAS/MinIO, prorated per node)&lt;/td>
&lt;td>2,000–5,000&lt;/td>
&lt;td>Varies with the total capacity of the cluster&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Total storage per node&lt;/strong>&lt;/td>
&lt;td>&lt;strong>~4,000–9,000&lt;/strong>&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Introl models 50 TB per GPU for effective operation in training clusters (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>); for pure inference the requirement is significantly lower (model weights + logs).&lt;/p>
&lt;/blockquote>
&lt;h3 id="rack-pdu-and-datacenter-connectivity">Rack, PDU and datacenter connectivity&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Component&lt;/th>
&lt;th>Estimated cost per node (USD/year)&lt;/th>
&lt;th>Source&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Rack colocation (high density, 10–15 kW per node)&lt;/td>
&lt;td>5,000–12,000/year&lt;/td>
&lt;td>&lt;a href="https://encoradvisors.com/data-center-colocation-pricing/">Encoradvisors · Colocation Pricing 2026&lt;/a>: high density 3,000–6,000 USD/month per rack; at 2 nodes per rack, ~1,500–3,000 USD/month per node = 18,000–36,000 USD/year in tier-1; lower in Spain&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Rack PDU, electrical cabling (prorated)&lt;/td>
&lt;td>500–1,000 per node (amortised capex)&lt;/td>
&lt;td>Inside the colocation line item or in an own datacenter&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Colocation in Spain/Europe is structurally cheaper than in US tier-1 markets (New York, Silicon Valley). For an own datacenter, replace it with the cost of your own space plus amortisation of the electrical and cooling infrastructure.&lt;/p>
&lt;/blockquote>
&lt;h3 id="capex-summary-per-4h100-sxm5-node">Capex summary per 4×H100 SXM5 node&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Line item&lt;/th>
&lt;th>Range (USD)&lt;/th>
&lt;th>Midpoint&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>GPUs (4× H100 SXM5)&lt;/td>
&lt;td>120,000–160,000&lt;/td>
&lt;td>140,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Server chassis + CPU/RAM/PSU&lt;/td>
&lt;td>18,000–25,000&lt;/td>
&lt;td>21,500&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>InfiniBand NDR network (prorated)&lt;/td>
&lt;td>6,000–8,000&lt;/td>
&lt;td>7,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>NVMe + object storage&lt;/td>
&lt;td>4,000–9,000&lt;/td>
&lt;td>6,500&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>PDU/rack/other (capex)&lt;/td>
&lt;td>2,000–5,000&lt;/td>
&lt;td>3,500&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Total capex per node&lt;/strong>&lt;/td>
&lt;td>&lt;strong>150,000–207,000&lt;/strong>&lt;/td>
&lt;td>&lt;strong>178,500&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Sources: &lt;a href="https://www.gmicloud.ai/en/blog/nvidia-h100-gpu-pricing-2026-rent-vs-buy-cost-analysis">GMI Cloud (Apr. 2026)&lt;/a>, &lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl (Apr. 2026)&lt;/a>, &lt;a href="https://www.spheron.network/blog/llm-inference-on-premise-vs-cloud/">Spheron (Apr. 2026)&lt;/a>, &lt;a href="https://www.xicomputer.com/Solutions/Data-Center-Servers/SYS-821GE-TNHR.asp">xicomputer.com (Jun. 2026)&lt;/a>.&lt;/p>
&lt;hr>
&lt;h2 id="opex-breakdown-per-4h100-sxm5-node-annual">Opex breakdown per 4×H100 SXM5 node (annual)&lt;/h2>
&lt;h3 id="energy">Energy&lt;/h3>
&lt;p>A 4×H100 SXM5 node at full load draws approximately:&lt;/p>
$$P_{\text{node}} = 4 \times 700\,\text{W (TDP H100 SXM5)} + 800\,\text{W (server)} \approx 3.6\,\text{kW (IT)}$$
&lt;p>The total datacenter power includes the cooling overhead, expressed by the &lt;strong>PUE&lt;/strong>:&lt;/p>
$$P_{\text{total}} = P_{\text{IT}} \times \text{PUE}$$
$$\text{annual energy cost} = P_{\text{IT}} \times \text{PUE} \times 8{,}760\,\text{h} \times \text{kWh price}$$
&lt;p>With the base values (PUE 1.54; 0.116 €/kWh):&lt;/p>
$$\text{energy/year} = 3.6\,\text{kW} \times 1.54 \times 8{,}760\,\text{h} \times 0.116\,\text{EUR/kWh} \approx 5{,}475\,\text{EUR}$$
&lt;p>With a Spanish solar PPA (Q3 2025 reference price: ~34 €/MWh = 0.034 €/kWh according to &lt;a href="https://www.pv-tech.org/european-solar-ppa-prices-fall-below-35-mwh-q3-2025/">PV Tech, Oct. 2025&lt;/a>):&lt;/p>
$$\text{energy/year (solar PPA)} = 3.6 \times 1.54 \times 8{,}760 \times 0.034 \approx 1{,}604\,\text{EUR}$$
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Energy scenario&lt;/th>
&lt;th>Price (€/kWh)&lt;/th>
&lt;th>Energy cost/year per 4-GPU node&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Spanish solar PPA (Q3 2025)&lt;/td>
&lt;td>0.034&lt;/td>
&lt;td>~1,604 €&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Industrial Spain (Sept. 2025)&lt;/td>
&lt;td>0.116&lt;/td>
&lt;td>~5,475 €&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>European average (industrial tariff)&lt;/td>
&lt;td>0.160&lt;/td>
&lt;td>~7,550 €&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Worst case (no PPA, high tariff)&lt;/td>
&lt;td>0.200&lt;/td>
&lt;td>~9,437 €&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="staff--operations">Staff / operations&lt;/h3>
&lt;p>Staff cost is the most variable line item with cluster size. For a small cluster (2–8 nodes), the rule of thumb is &lt;strong>0.3–0.5 FTE per cluster&lt;/strong> of GPU infrastructure support (&lt;a href="https://www.spheron.network/blog/llm-inference-on-premise-vs-cloud/">Spheron, Apr. 2026&lt;/a>).&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Cluster size&lt;/th>
&lt;th>Estimated FTE&lt;/th>
&lt;th>FTE cost (€/year, Western Europe)&lt;/th>
&lt;th>Cost per 4-GPU node (€/year)&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>2–4 nodes&lt;/td>
&lt;td>0.3 FTE&lt;/td>
&lt;td>~120,000&lt;/td>
&lt;td>36,000–18,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>8–16 nodes&lt;/td>
&lt;td>0.5 FTE&lt;/td>
&lt;td>~120,000&lt;/td>
&lt;td>7,500&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>32+ nodes&lt;/td>
&lt;td>1–2 FTE&lt;/td>
&lt;td>~120,000&lt;/td>
&lt;td>3,750–7,500&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Indicative salary reference: a GPU infrastructure engineer with CUDA, InfiniBand and Kubernetes knowledge in Western Europe, ~90,000–140,000 €/year fully loaded. Introl&amp;rsquo;s figures (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Apr. 2026&lt;/a>) in USD (~275,000 USD/year for the US) reflect the North American market, which is appreciably higher.&lt;/p>
&lt;/blockquote>
&lt;h3 id="maintenance-and-support">Maintenance and support&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Line item&lt;/th>
&lt;th>Annual cost (% of hardware capex)&lt;/th>
&lt;th>Per 4-GPU node (midpoint)&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Vendor maintenance / support&lt;/td>
&lt;td>5–10 % of capex&lt;/td>
&lt;td>~7,000–14,000 USD → ~6,500–13,000 €&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>GPU failure rate (~5 % annual) × replacement cost&lt;/td>
&lt;td>5 % × 4 GPUs × ~35,000 USD = ~7,000 USD expected&lt;/td>
&lt;td>~6,500 € (amortised as a provision)&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Minor spares (cables, modules)&lt;/td>
&lt;td>~500–1,000 €&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>Introl quotes GPU failure rates of 2–3 % per year in small clusters; Google Research documented ~9 % annualised in Meta&amp;rsquo;s 16,384-GPU H100 cluster (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>). 5 % is used here as a conservative intermediate value.&lt;/p>
&lt;/blockquote>
&lt;h3 id="depreciation-for-accounting-purposes">Depreciation (for accounting purposes)&lt;/h3>
&lt;p>Straight-line depreciation turns capex into an annual flow comparable to the cost of committed cloud:&lt;/p>
$$\text{annual depreciation} = \frac{\text{node capex}}{\text{amortisation years}}$$
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Node capex (USD)&lt;/th>
&lt;th>3-year amortisation (USD/year)&lt;/th>
&lt;th>5-year amortisation (USD/year)&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>150,000 (minimum)&lt;/td>
&lt;td>50,000&lt;/td>
&lt;td>30,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>178,500 (average)&lt;/td>
&lt;td>59,500&lt;/td>
&lt;td>35,700&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>207,000 (maximum)&lt;/td>
&lt;td>69,000&lt;/td>
&lt;td>41,400&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>H100 hardware depreciates fast: secondary-market analyses put the residual value at 20–40 % of the purchase price after 3 years (&lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">Introl, Apr. 2026&lt;/a>). The arrival of Blackwell GB200/GB300 accelerates the perceived obsolescence.&lt;/p>
&lt;/blockquote>
&lt;h3 id="annual-opex-summary-per-4h100-sxm5-node-base-scenario-8-node-cluster">Annual opex summary per 4×H100 SXM5 node (base scenario, 8-node cluster)&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Line item&lt;/th>
&lt;th>Base scenario (€/year)&lt;/th>
&lt;th>Range&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Energy (PUE 1.54; 0.116 €/kWh)&lt;/td>
&lt;td>5,475&lt;/td>
&lt;td>1,604–9,437&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Staff (0.5 FTE × 8 nodes, prorated)&lt;/td>
&lt;td>7,500&lt;/td>
&lt;td>3,750–36,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Maintenance / support / failures&lt;/td>
&lt;td>9,000&lt;/td>
&lt;td>5,000–15,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Rack colocation (Spain, high density)&lt;/td>
&lt;td>6,000&lt;/td>
&lt;td>3,000–15,000&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Total opex per node&lt;/strong>&lt;/td>
&lt;td>&lt;strong>~28,000&lt;/strong>&lt;/td>
&lt;td>&lt;strong>~13,000–75,000&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>The extreme range reflects the difference between a well amortised own datacenter with a solar PPA and cheap energy (minimum opex) and tier-1 colocation with market tariffs and senior staff.&lt;/p>
&lt;hr>
&lt;h2 id="deriving-the-all-in-gpu-hour">Deriving the all-in €/GPU-hour&lt;/h2>
&lt;h3 id="formula">Formula&lt;/h3>
$$\text{EUR/GPU-hour all-in} = \frac{\frac{\text{node capex}}{\text{years}} + \text{node annual opex}}{4\,\text{GPUs} \times 8{,}760\,\text{h} \times u}$$
&lt;p>where \(u\) is the average annual utilisation (0 to 1).&lt;/p>
&lt;p>See the cost-per-token identity in &lt;a href="https://blog.lo0.es/en/posts/gpu-hour-to-cost-per-token-on-prem-vs-cloud/">cost per token and per request&lt;/a> for the connection with throughput.&lt;/p>
&lt;h3 id="gpu-hour-table-by-utilisation-and-scenario">€/GPU-hour table by utilisation and scenario&lt;/h3>
&lt;p>&lt;strong>Average capex (178,500 USD → ~166,000 €), 3-year amortisation → 55,300 €/year.&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Utilisation&lt;/th>
&lt;th>Opex/year (base, €)&lt;/th>
&lt;th>Total cost/year (€)&lt;/th>
&lt;th>Useful GPU-hours/year&lt;/th>
&lt;th>&lt;strong>€/GPU-hour&lt;/strong>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>30 %&lt;/td>
&lt;td>28,000&lt;/td>
&lt;td>83,300&lt;/td>
&lt;td>10,512&lt;/td>
&lt;td>&lt;strong>7.93&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>50 %&lt;/td>
&lt;td>28,000&lt;/td>
&lt;td>83,300&lt;/td>
&lt;td>17,520&lt;/td>
&lt;td>&lt;strong>4.75&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70 %&lt;/td>
&lt;td>28,000&lt;/td>
&lt;td>83,300&lt;/td>
&lt;td>24,528&lt;/td>
&lt;td>&lt;strong>3.39&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>80 %&lt;/td>
&lt;td>28,000&lt;/td>
&lt;td>83,300&lt;/td>
&lt;td>28,032&lt;/td>
&lt;td>&lt;strong>2.97&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>100 %&lt;/td>
&lt;td>28,000&lt;/td>
&lt;td>83,300&lt;/td>
&lt;td>35,040&lt;/td>
&lt;td>&lt;strong>2.38&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>Low-opex scenario&lt;/strong> (solar PPA, own datacenter, large cluster): opex/year ~13,000 €.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Utilisation&lt;/th>
&lt;th>Total cost/year (€)&lt;/th>
&lt;th>&lt;strong>€/GPU-hour&lt;/strong>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>50 %&lt;/td>
&lt;td>68,300&lt;/td>
&lt;td>&lt;strong>3.90&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70 %&lt;/td>
&lt;td>68,300&lt;/td>
&lt;td>&lt;strong>2.78&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>80 %&lt;/td>
&lt;td>68,300&lt;/td>
&lt;td>&lt;strong>2.43&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>100 %&lt;/td>
&lt;td>68,300&lt;/td>
&lt;td>&lt;strong>1.95&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>High-opex scenario&lt;/strong> (market tariff, expensive colocation, small cluster): opex/year ~75,000 €.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Utilisation&lt;/th>
&lt;th>Total cost/year (€)&lt;/th>
&lt;th>&lt;strong>€/GPU-hour&lt;/strong>&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>50 %&lt;/td>
&lt;td>130,300&lt;/td>
&lt;td>&lt;strong>7.44&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70 %&lt;/td>
&lt;td>130,300&lt;/td>
&lt;td>&lt;strong>5.31&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>80 %&lt;/td>
&lt;td>130,300&lt;/td>
&lt;td>&lt;strong>4.65&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>100 %&lt;/td>
&lt;td>130,300&lt;/td>
&lt;td>&lt;strong>3.72&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h2 id="from-gpu-hour-to-1m-tokens">From €/GPU-hour to €/1M tokens&lt;/h2>
&lt;p>The cost-per-token identity connects the hardware cost with the inference cost:&lt;/p>
$$\text{EUR/1M tokens} = \frac{\text{EUR/GPU-hour} \times 10^6}{\text{throughput (tok/s)} \times 3{,}600}$$
&lt;p>For reference throughputs on H100 SXM5 with vLLM (see &lt;a href="https://blog.lo0.es/en/posts/capacity-planning-on-premise-llm-inference/">capacity planning for on-premise inference&lt;/a>):&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Model&lt;/th>
&lt;th>Typical throughput (tok/s per GPU)&lt;/th>
&lt;th>Source&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Llama-3 70B FP8, high batch&lt;/td>
&lt;td>~2,800&lt;/td>
&lt;td>Series B benchmarks&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Llama-3 8B FP16, medium batch&lt;/td>
&lt;td>~9,000&lt;/td>
&lt;td>Series B benchmarks&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Mixtral 8×7B, high batch&lt;/td>
&lt;td>~4,500&lt;/td>
&lt;td>Series B benchmarks&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>€/1M tokens table in the base scenario (€/GPU-hour 3.39 at 70 % utilisation):&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Model&lt;/th>
&lt;th>Throughput (tok/s)&lt;/th>
&lt;th>€/1M tokens&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Llama-3 70B FP8&lt;/td>
&lt;td>2,800&lt;/td>
&lt;td>&lt;strong>~0.336&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Llama-3 8B FP16&lt;/td>
&lt;td>9,000&lt;/td>
&lt;td>&lt;strong>~0.105&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Mixtral 8×7B&lt;/td>
&lt;td>4,500&lt;/td>
&lt;td>&lt;strong>~0.209&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>At 50 % utilisation (€/GPU-hour 4.75):&lt;/strong>&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Model&lt;/th>
&lt;th>€/1M tokens&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Llama-3 70B FP8&lt;/td>
&lt;td>&lt;strong>~0.471&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Llama-3 8B FP16&lt;/td>
&lt;td>&lt;strong>~0.147&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Occupancy (batching) multiplies the effective throughput and lowers the €/1M tokens without changing the hardware; it is analysed in &lt;a href="https://blog.lo0.es/en/posts/gpu-idle-cost-not-on-any-invoice/">GPU utilisation as a FinOps lever&lt;/a>.&lt;/p>
&lt;hr>
&lt;h2 id="break-even-on-prem-vs-cloud">Break-even on-prem vs cloud&lt;/h2>
&lt;h3 id="the-break-even-formula">The break-even formula&lt;/h3>
&lt;p>Break-even happens when the total annual on-prem cost equals the annual cloud cost at the same utilisation:&lt;/p>
$$\text{annual cloud cost} = \text{cloud GPU-hour price} \times 4\,\text{GPUs} \times 8{,}760\,\text{h} \times u$$
$$\text{break-even}: \quad \frac{\text{capex/year} + \text{opex/year}}{4 \times 8{,}760 \times u} = \text{cloud GPU-hour price}$$
&lt;p>Solving for the break-even utilisation:&lt;/p>
$$u^* = \frac{\text{capex/year} + \text{opex/year}}{4 \times 8{,}760 \times \text{cloud GPU-hour price}}$$
&lt;h3 id="break-even-table-by-cloud-mode-and-on-prem-scenario">Break-even table by cloud mode and on-prem scenario&lt;/h3>
&lt;p>&lt;strong>Base on-prem scenario&lt;/strong> (capex/year 55,300 €, opex/year 28,000 €, total 83,300 €/year per 4-GPU node):&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Cloud reference (price/GPU-hour)&lt;/th>
&lt;th>USD equiv.&lt;/th>
&lt;th>Break-even utilisation \(u^*\)&lt;/th>
&lt;th>Note&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>Neocloud on-demand (Lambda/Spheron ~2.90 USD)&lt;/td>
&lt;td>2.90 USD (~2.70 €)&lt;/td>
&lt;td>&lt;strong>&amp;gt;100 %&lt;/strong>, on-prem does not compete&lt;/td>
&lt;td>Neocloud on-demand is cheaper even at full utilisation&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Neocloud 3-year reserved (CoreWeave ~1.49–2.10 USD)&lt;/td>
&lt;td>~1.80 USD (~1.67 €)&lt;/td>
&lt;td>&lt;strong>&amp;gt;100 %&lt;/strong>, impossible&lt;/td>
&lt;td>Neocloud reserved beats on-prem in every scenario of this model&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>AWS p5 on-demand (6.88 USD/GPU-hour)&lt;/td>
&lt;td>6.88 USD (~6.40 €)&lt;/td>
&lt;td>&lt;strong>~47 %&lt;/strong>&lt;/td>
&lt;td>Above 47 %, the average on-prem beats AWS on-demand&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>AWS p5 3-year reserved (~2.97 USD/GPU-hour)&lt;/td>
&lt;td>2.97 USD (~2.76 €)&lt;/td>
&lt;td>&lt;strong>&amp;gt;100 %&lt;/strong>&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>GCP A3 on-demand (~10.98 USD/GPU-hour)&lt;/td>
&lt;td>10.98 USD (~10.21 €)&lt;/td>
&lt;td>&lt;strong>~29 %&lt;/strong>&lt;/td>
&lt;td>Above 29 %, on-prem beats GCP on-demand&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Azure ND H100 v5 on-demand (~12.29 USD/GPU-hour)&lt;/td>
&lt;td>12.29 USD (~11.43 €)&lt;/td>
&lt;td>&lt;strong>~26 %&lt;/strong>&lt;/td>
&lt;td>—&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>Low-opex scenario&lt;/strong> (total 68,300 €/year):&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Cloud reference&lt;/th>
&lt;th>Break-even utilisation&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>AWS p5 on-demand (6.88 USD ≈ 6.40 €)&lt;/td>
&lt;td>&lt;strong>~38 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Neocloud on-demand (2.90 USD ≈ 2.70 €)&lt;/td>
&lt;td>&lt;strong>~91 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Neocloud 3-yr reserved (1.80 USD ≈ 1.67 €)&lt;/td>
&lt;td>&lt;strong>&amp;gt;100 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>&lt;strong>High-opex scenario&lt;/strong> (total 130,300 €/year):&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Cloud reference&lt;/th>
&lt;th>Break-even utilisation&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>AWS p5 on-demand (6.88 USD ≈ 6.40 €)&lt;/td>
&lt;td>&lt;strong>~72 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>GCP A3 on-demand (~10.21 €)&lt;/td>
&lt;td>&lt;strong>~45 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>Azure on-demand (~11.43 €)&lt;/td>
&lt;td>&lt;strong>~41 %&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="reading-the-break-even-table">Reading the break-even table&lt;/h3>
&lt;ul>
&lt;li>Against &lt;strong>neoclouds&lt;/strong> (on-demand or reserved), on-prem TCO &lt;strong>does not reach break-even&lt;/strong> in any scenario of the base model. Neocloud reserved beats on-prem even at 100 % utilisation, because its hourly price is below the all-in cost of your own hardware. This is consistent with the analysis in &lt;a href="https://blog.lo0.es/en/posts/cloud-gpu-on-demand-reserved-spot-neoclouds-2026-prices/">cloud GPU: on-demand, reserved and spot&lt;/a>.&lt;/li>
&lt;li>Against &lt;strong>on-demand hyperscalers&lt;/strong> (AWS, GCP, Azure), on-prem does have an achievable break-even: around &lt;strong>26–72 %&lt;/strong> utilisation depending on the scenario. At medium-high utilisation (&amp;gt;70 %), on-prem clearly beats AWS/GCP/Azure on-demand.&lt;/li>
&lt;li>The variable that moves the break-even most is &lt;strong>opex&lt;/strong> (staff above all), not hardware capex. A well sized cluster in cheap colocation with PPA energy can lower the threshold by 20 percentage points compared with the high scenario.&lt;/li>
&lt;li>For GDPR data, the break-even against US hyperscalers is skewed: the sovereignty axis rules out US hyperscalers before cost does (see &lt;a href="https://blog.lo0.es/en/posts/sovereign-on-premise-vs-hyperscalers-data/">sovereign on-premise vs hyperscalers&lt;/a>).&lt;/li>
&lt;/ul>
&lt;div class="diagram" style="max-width:760px;margin:1rem auto;">
&lt;svg viewBox="0 0 760 260" role="img" aria-label="Break-even on-prem vs cloud by utilisation: base on-prem crosses AWS on-demand at 47 per cent, GCP at 29 per cent and Azure at 26 per cent utilisation. Neoclouds have no feasible break-even." xmlns="http://www.w3.org/2000/svg">
&lt;style>.ax{fill:none;stroke:currentColor;stroke-width:1}.cv{fill:none;stroke:currentColor;stroke-width:1.8}.dsh{fill:none;stroke:currentColor;stroke-width:1.2;stroke-dasharray:5 3}.ts{font:11px sans-serif;fill:currentColor}.tl{font:600 11.5px sans-serif;fill:currentColor}&lt;/style>
&lt;line class="ax" x1="60" y1="30" x2="60" y2="210"/>
&lt;line class="ax" x1="60" y1="210" x2="730" y2="210"/>
&lt;text x="22" y="125" class="ts" transform="rotate(-90 22 125)">€/GPU-hour&lt;/text>
&lt;text x="350" y="235" class="ts">utilisation (%) →&lt;/text>
&lt;text x="65" y="226" class="ts">0&lt;/text>
&lt;text x="220" y="226" class="ts">30&lt;/text>
&lt;text x="375" y="226" class="ts">60&lt;/text>
&lt;text x="535" y="226" class="ts">90&lt;/text>
&lt;text x="700" y="226" class="ts">100&lt;/text>
&lt;line class="ax" x1="220" y1="207" x2="220" y2="213"/>
&lt;line class="ax" x1="375" y1="207" x2="375" y2="213"/>
&lt;line class="ax" x1="535" y1="207" x2="535" y2="213"/>
&lt;line class="ax" x1="700" y1="207" x2="700" y2="213"/>
&lt;path class="cv" d="M80,40 C150,65 250,110 375,148 C480,178 600,195 710,203"/>
&lt;text x="82" y="36" class="tl">on-prem (fixed capex)&lt;/text>
&lt;line class="cv" x1="60" y1="155" x2="730" y2="155"/>
&lt;text x="632" y="149" class="ts">AWS p5 OD (~6.40 €)&lt;/text>
&lt;line class="cv" x1="60" y1="190" x2="730" y2="190"/>
&lt;text x="620" y="186" class="ts">GCP OD (~10.21 €)&lt;/text>
&lt;line class="cv" x1="60" y1="200" x2="730" y2="200"/>
&lt;text x="620" y="198" class="ts">Azure OD (~11.43 €)&lt;/text>
&lt;line class="cv" x1="60" y1="95" x2="730" y2="95"/>
&lt;text x="632" y="91" class="ts">neocloud OD (~2.70 €)&lt;/text>
&lt;line class="dsh" x1="310" y1="30" x2="310" y2="210"/>
&lt;text x="272" y="48" class="tl">≈47 % (AWS)&lt;/text>
&lt;line class="dsh" x1="187" y1="30" x2="187" y2="210"/>
&lt;text x="148" y="48" class="ts">≈29 % (GCP)&lt;/text>
&lt;/svg>
&lt;/div>
&lt;hr>
&lt;h2 id="sensitivity-analysis">Sensitivity analysis&lt;/h2>
&lt;h3 id="tco-vs-utilisation">TCO vs utilisation&lt;/h3>
&lt;p>The all-in cost per GPU-hour varies inversely with utilisation because capex is fixed:&lt;/p>
$$\frac{d(\text{EUR/GPU-hour})}{du} = -\frac{\text{capex/year} + \text{opex/year}}{4 \times 8{,}760 \times u^2} &lt; 0$$
&lt;p>Going from 50 % to 80 % utilisation cuts the €/GPU-hour by \(\frac{4.75 - 2.97}{4.75} \approx 37\,\%\) in the base scenario. That 37 % reduction requires no hardware change, only more efficient scheduling (see &lt;a href="https://blog.lo0.es/en/posts/gpu-idle-cost-not-on-any-invoice/">GPU utilisation as a FinOps lever&lt;/a>).&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Utilisation&lt;/th>
&lt;th>€/GPU-hour (base scenario)&lt;/th>
&lt;th>Change vs 50 %&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>30 %&lt;/td>
&lt;td>7.93&lt;/td>
&lt;td>+67 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>50 %&lt;/td>
&lt;td>4.75&lt;/td>
&lt;td>reference&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>70 %&lt;/td>
&lt;td>3.39&lt;/td>
&lt;td>−29 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>80 %&lt;/td>
&lt;td>2.97&lt;/td>
&lt;td>−37 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>100 %&lt;/td>
&lt;td>2.38&lt;/td>
&lt;td>−50 %&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;h3 id="tco-vs-energy-price">TCO vs energy price&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Energy price (€/kWh)&lt;/th>
&lt;th>Energy opex/year&lt;/th>
&lt;th>€/GPU-hour (70 % util.)&lt;/th>
&lt;th>Change vs base&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>0.034 (solar PPA)&lt;/td>
&lt;td>1,604 €&lt;/td>
&lt;td>&lt;strong>3.00&lt;/strong>&lt;/td>
&lt;td>−12 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>0.116 (industrial ES, base)&lt;/td>
&lt;td>5,475 €&lt;/td>
&lt;td>&lt;strong>3.39&lt;/strong>&lt;/td>
&lt;td>reference&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>0.160 (European average)&lt;/td>
&lt;td>7,550 €&lt;/td>
&lt;td>&lt;strong>3.54&lt;/strong>&lt;/td>
&lt;td>+4 %&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>0.200 (high tariff)&lt;/td>
&lt;td>9,437 €&lt;/td>
&lt;td>&lt;strong>3.67&lt;/strong>&lt;/td>
&lt;td>+8 %&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Energy has a &lt;strong>moderate&lt;/strong> impact on total TCO (8–12 % variation between the extremes), because hardware capex dominates. Over a very long amortisation (5 years) with a solar PPA, however, energy drops from 6 % to 1 % of total TCO and the differential is amplified. The price of energy matters more for the carbon footprint (CSRD) than for TCO when capex is dominant.&lt;/p>
&lt;h3 id="tco-vs-pue">TCO vs PUE&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>PUE&lt;/th>
&lt;th>Cooling overhead&lt;/th>
&lt;th>Energy/year (0.116 €/kWh)&lt;/th>
&lt;th>€/GPU-hour (70 % util.)&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>1.15 (liquid cooling, new facilities)&lt;/td>
&lt;td>+15 %&lt;/td>
&lt;td>2,166 €&lt;/td>
&lt;td>&lt;strong>3.21&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1.20 (liquid, modern datacenter)&lt;/td>
&lt;td>+20 %&lt;/td>
&lt;td>2,259 €&lt;/td>
&lt;td>&lt;strong>3.23&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1.48 (facilities &amp;lt;5 years, Uptime 2025)&lt;/td>
&lt;td>+48 %&lt;/td>
&lt;td>3,490 €&lt;/td>
&lt;td>&lt;strong>3.33&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1.54 (global average, Uptime 2025)&lt;/td>
&lt;td>+54 %&lt;/td>
&lt;td>3,627 €&lt;/td>
&lt;td>&lt;strong>3.39&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>1.80 (legacy colocation)&lt;/td>
&lt;td>+80 %&lt;/td>
&lt;td>4,260 €&lt;/td>
&lt;td>&lt;strong>3.47&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>The difference between PUE 1.15 (liquid) and 1.80 (legacy) is barely &lt;strong>~8 %&lt;/strong> of the €/GPU-hour at 70 % utilisation, because energy is only a fraction of TCO. PUE matters far more for the &lt;strong>absolute energy cost&lt;/strong> and for &lt;strong>CSRD reporting&lt;/strong> than for total TCO when hardware is the dominant component.&lt;/p>
&lt;h3 id="tco-vs-amortisation-years">TCO vs amortisation years&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Amortisation&lt;/th>
&lt;th>Capex/year (average node, USD)&lt;/th>
&lt;th>€/GPU-hour (70 % util., base opex scenario)&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>3 years&lt;/td>
&lt;td>59,500 USD (~55,300 €)&lt;/td>
&lt;td>&lt;strong>3.39&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>4 years&lt;/td>
&lt;td>44,625 USD (~41,500 €)&lt;/td>
&lt;td>&lt;strong>2.99&lt;/strong>&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>5 years&lt;/td>
&lt;td>35,700 USD (~33,200 €)&lt;/td>
&lt;td>&lt;strong>2.72&lt;/strong>&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;p>Stretching the amortisation from 3 to 5 years lowers the €/GPU-hour by ~&lt;strong>20 %&lt;/strong>, assuming the hardware remains competitive and the resale market supports the residual value. With the refresh cycle accelerated by Blackwell GB200/GB300, a 5-year amortisation carries a higher risk of technological obsolescence.&lt;/p>
&lt;h3 id="sensitivity-heat-map-gpu-hour-at-70--utilisation-base-scenario">Sensitivity heat map (€/GPU-hour at 70 % utilisation, base scenario)&lt;/h3>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>&lt;/th>
&lt;th>PUE 1.15&lt;/th>
&lt;th>PUE 1.54&lt;/th>
&lt;th>PUE 1.80&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>3-yr amort., solar PPA (0.034 €)&lt;/strong>&lt;/td>
&lt;td>2.72&lt;/td>
&lt;td>2.74&lt;/td>
&lt;td>2.76&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>3-yr amort., industrial (0.116 €)&lt;/strong>&lt;/td>
&lt;td>3.21&lt;/td>
&lt;td>3.39&lt;/td>
&lt;td>3.47&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>5-yr amort., industrial (0.116 €)&lt;/strong>&lt;/td>
&lt;td>2.54&lt;/td>
&lt;td>2.72&lt;/td>
&lt;td>2.80&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>3-yr amort., high tariff (0.200 €)&lt;/strong>&lt;/td>
&lt;td>3.44&lt;/td>
&lt;td>3.67&lt;/td>
&lt;td>3.78&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;hr>
&lt;h2 id="decision-table-costcontrolsovereignty-pareto">Decision table: cost/control/sovereignty Pareto&lt;/h2>
&lt;p>The table below crosses the four dimensions with no implicit hierarchy; the ordinal reading depends on each organisation&amp;rsquo;s constraints.&lt;/p>
&lt;table>
&lt;thead>
&lt;tr>
&lt;th>Option&lt;/th>
&lt;th>€/GPU-hour&lt;/th>
&lt;th>Initial capex&lt;/th>
&lt;th>Full stack control&lt;/th>
&lt;th>EU sovereignty&lt;/th>
&lt;th>Elasticity&lt;/th>
&lt;th>Operational risk&lt;/th>
&lt;/tr>
&lt;/thead>
&lt;tbody>
&lt;tr>
&lt;td>&lt;strong>On-prem (util. &amp;gt;70 %, low opex)&lt;/strong>&lt;/td>
&lt;td>2.40–3.00&lt;/td>
&lt;td>high (150–207k USD/node)&lt;/td>
&lt;td>total&lt;/td>
&lt;td>total&lt;/td>
&lt;td>none&lt;/td>
&lt;td>hardware failure, idle&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>On-prem (util. &amp;lt;50 %, base opex)&lt;/strong>&lt;/td>
&lt;td>4.75–7.93&lt;/td>
&lt;td>high&lt;/td>
&lt;td>total&lt;/td>
&lt;td>total&lt;/td>
&lt;td>none&lt;/td>
&lt;td>capex with no return&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Neocloud 3-year reserved (CoreWeave, Lambda)&lt;/strong>&lt;/td>
&lt;td>1.49–2.10 USD&lt;/td>
&lt;td>none&lt;/td>
&lt;td>partial (API)&lt;/td>
&lt;td>depends on the provider&lt;/td>
&lt;td>rigid contract&lt;/td>
&lt;td>minimal interruption&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Neocloud on-demand (Lambda, Spheron)&lt;/strong>&lt;/td>
&lt;td>2.49–3.44 USD&lt;/td>
&lt;td>none&lt;/td>
&lt;td>partial&lt;/td>
&lt;td>depends&lt;/td>
&lt;td>total&lt;/td>
&lt;td>no interruption&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>AWS p5 on-demand&lt;/strong>&lt;/td>
&lt;td>6.88 USD&lt;/td>
&lt;td>none&lt;/td>
&lt;td>minimal&lt;/td>
&lt;td>NO (CLOUD Act)&lt;/td>
&lt;td>total&lt;/td>
&lt;td>no interruption&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>AWS p5 3-year reserved&lt;/strong>&lt;/td>
&lt;td>~2.97 USD&lt;/td>
&lt;td>financial commitment&lt;/td>
&lt;td>minimal&lt;/td>
&lt;td>NO (CLOUD Act)&lt;/td>
&lt;td>rigid&lt;/td>
&lt;td>no interruption&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Sovereign EU cloud (Scaleway, Nebius EU)&lt;/strong>&lt;/td>
&lt;td>2.15–3.85 USD&lt;/td>
&lt;td>none&lt;/td>
&lt;td>partial&lt;/td>
&lt;td>yes (EU)&lt;/td>
&lt;td>total&lt;/td>
&lt;td>no interruption&lt;/td>
&lt;/tr>
&lt;tr>
&lt;td>&lt;strong>Hybrid on-prem base + EU cloud peak&lt;/strong>&lt;/td>
&lt;td>2.00–3.50 (weighted)&lt;/td>
&lt;td>medium&lt;/td>
&lt;td>high&lt;/td>
&lt;td>yes (EU)&lt;/td>
&lt;td>elastic peak&lt;/td>
&lt;td>operational complexity&lt;/td>
&lt;/tr>
&lt;/tbody>
&lt;/table>
&lt;blockquote>
&lt;p>&amp;ldquo;EU sovereignty&amp;rdquo; column: US hyperscalers (AWS, GCP, Azure) are subject to the US CLOUD Act regardless of the datacenter region. Nebius has a Dutch legal entity; CoreWeave is a US company. See the full analysis in &lt;a href="https://blog.lo0.es/en/posts/sovereign-on-premise-vs-hyperscalers-data/">sovereign on-premise vs hyperscalers&lt;/a>.&lt;/p>
&lt;/blockquote>
&lt;blockquote>
&lt;p>&amp;ldquo;Full stack control&amp;rdquo; column: on-prem lets you choose the driver version, the kernel, the NCCL configuration, MIG partitioning, and any system parameter. Cloud options offer control at container/pod level, with the hypervisor and firmware opaque.&lt;/p>
&lt;/blockquote>
&lt;p>The cost/sovereignty Pareto frontier for GDPR data excludes US hyperscalers, leaving: &lt;strong>on-prem&lt;/strong>, &lt;strong>sovereign EU cloud&lt;/strong>, and the &lt;strong>hybrid&lt;/strong>. Among those three, the deciding variable is sustained utilisation and the predictability of traffic (see &lt;a href="https://blog.lo0.es/en/posts/capacity-planning-on-premise-llm-inference/">capacity planning for on-premise LLM inference&lt;/a>).&lt;/p>
&lt;hr>
&lt;h2 id="integration-with-the-series-finops-model">Integration with the series FinOps model&lt;/h2>
&lt;p>The all-in €/GPU-hour of on-prem is the number that feeds the cost allocation pipeline of the series:&lt;/p>
&lt;ol>
&lt;li>&lt;strong>Cost-per-token identity&lt;/strong> (&lt;a href="https://blog.lo0.es/en/posts/gpu-hour-to-cost-per-token-on-prem-vs-cloud/">cost per token and per request&lt;/a>): engine throughput × €/GPU-hour → €/1M tokens.&lt;/li>
&lt;li>&lt;strong>Chargeback and showback&lt;/strong> (&lt;a href="https://blog.lo0.es/en/posts/opencost-gpu-cost-allocation-kubernetes/">chargeback and showback in GPU multitenancy&lt;/a>): the all-in €/GPU-hour is the internal price charged to each tenant of the multi-tenant cluster.&lt;/li>
&lt;li>&lt;strong>Utilisation as a lever&lt;/strong> (&lt;a href="https://blog.lo0.es/en/posts/gpu-idle-cost-not-on-any-invoice/">GPU utilisation as FinOps&lt;/a>): raising utilisation from 50 % to 80 % cuts the €/GPU-hour by 37 % without changing the hardware, the highest ROI in on-prem FinOps.&lt;/li>
&lt;li>&lt;strong>Capacity planning&lt;/strong> (&lt;a href="https://blog.lo0.es/en/posts/capacity-planning-on-premise-llm-inference/">capacity planning for on-premise LLM inference&lt;/a>): the number of nodes to buy depends on the percentile of base load you want to cover in iron.&lt;/li>
&lt;li>&lt;strong>Cloud comparison&lt;/strong> (&lt;a href="https://blog.lo0.es/en/posts/cloud-gpu-on-demand-reserved-spot-neoclouds-2026-prices/">cloud GPU: on-demand, reserved and spot&lt;/a>): the all-in €/GPU-hour goes head to head with the cloud price in table A7 to compute the break-even.&lt;/li>
&lt;/ol>
&lt;hr>
&lt;h2 id="sources">Sources&lt;/h2>
&lt;ul>
&lt;li>Spheron · LLM Inference On-Premise vs GPU Cloud: 2026 Cost and Break-Even Analysis (abr. 2026) — &lt;a href="https://www.spheron.network/blog/llm-inference-on-premise-vs-cloud/">https://www.spheron.network/blog/llm-inference-on-premise-vs-cloud/&lt;/a>&lt;/li>
&lt;li>Introl · GPU Infrastructure TCO Model: 5-Year Cost Analysis for Enterprise AI (abr. 2026) — &lt;a href="https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model">https://introl.com/blog/gpu-infrastructure-tco-5-year-cost-model&lt;/a>&lt;/li>
&lt;li>GMI Cloud · NVIDIA H100 GPU Pricing: 2026 Rent vs. Buy Cost Analysis (abr. 2026) — &lt;a href="https://www.gmicloud.ai/en/blog/nvidia-h100-gpu-pricing-2026-rent-vs-buy-cost-analysis">https://www.gmicloud.ai/en/blog/nvidia-h100-gpu-pricing-2026-rent-vs-buy-cost-analysis&lt;/a>&lt;/li>
&lt;li>Uptime Institute · Global Data Center Survey 2025 (PDF oficial) — &lt;a href="https://datacenter.uptimeinstitute.com/rs/711-RIA-145/images/2025.Annual.Survey.Report.pdf">https://datacenter.uptimeinstitute.com/rs/711-RIA-145/images/2025.Annual.Survey.Report.pdf&lt;/a>&lt;/li>
&lt;li>Uptime Institute · Global Data Center PUE Stalls at 1.54 (comunicado, oct. 2025) — &lt;a href="https://mgrid.org/2025/10/01/uptime-institute-data-center-pue-stagnation-2025-liquid-cooling/">https://mgrid.org/2025/10/01/uptime-institute-data-center-pue-stagnation-2025-liquid-cooling/&lt;/a>&lt;/li>
&lt;li>GlobalPetrolPrices · Spain Business Electricity Price (sept. 2025) — &lt;a href="https://www.globalpetrolprices.com/Spain/electricity_prices/">https://www.globalpetrolprices.com/Spain/electricity_prices/&lt;/a>&lt;/li>
&lt;li>PV Tech · European Solar PPA Prices Fall Below 35 €/MWh in Q3 2025 (oct. 2025) — &lt;a href="https://www.pv-tech.org/european-solar-ppa-prices-fall-below-35-mwh-q3-2025/">https://www.pv-tech.org/european-solar-ppa-prices-fall-below-35-mwh-q3-2025/&lt;/a>&lt;/li>
&lt;li>Xi Computers · Supermicro SYS-821GE-TNHR 8U GPU Server Pricing (jun. 2026) — &lt;a href="https://www.xicomputer.com/Solutions/Data-Center-Servers/SYS-821GE-TNHR.asp">https://www.xicomputer.com/Solutions/Data-Center-Servers/SYS-821GE-TNHR.asp&lt;/a>&lt;/li>
&lt;li>Encoradvisors · Data Center Colocation Pricing 2026 — &lt;a href="https://encoradvisors.com/data-center-colocation-pricing/">https://encoradvisors.com/data-center-colocation-pricing/&lt;/a>&lt;/li>
&lt;li>CloudZero · H100 GPU Cost In 2026: Buy, Rent, and Cloud Pricing Compared — &lt;a href="https://www.cloudzero.com/blog/h100-gpu-cost/">https://www.cloudzero.com/blog/h100-gpu-cost/&lt;/a>&lt;/li>
&lt;li>Spheron · AI Inference Power Consumption and GPU Electricity Costs: 2026 Guide — &lt;a href="https://www.spheron.network/blog/ai-inference-power-electricity-cost-2026/">https://www.spheron.network/blog/ai-inference-power-electricity-cost-2026/&lt;/a>&lt;/li>
&lt;li>NVIDIA · DGX SuperPOD H100 Electrical Specifications (documentación oficial) — &lt;a href="https://docs.nvidia.com/dgx-superpod/design-guides/dgx-superpod-data-center-design-h100/latest/electrical.html">https://docs.nvidia.com/dgx-superpod/design-guides/dgx-superpod-data-center-design-h100/latest/electrical.html&lt;/a>&lt;/li>
&lt;/ul></description></item></channel></rss>