<?xml version="1.0" encoding="UTF-8"?>
<rss  xmlns:atom="http://www.w3.org/2005/Atom" 
      xmlns:media="http://search.yahoo.com/mrss/" 
      xmlns:content="http://purl.org/rss/1.0/modules/content/" 
      xmlns:dc="http://purl.org/dc/elements/1.1/" 
      version="2.0">
<channel>
<title>2002².xyz</title>
<link>https://4008004.xyz/en/</link>
<atom:link href="https://4008004.xyz/en/index.xml" rel="self" type="application/rss+xml"/>
<description>A blog exploring finance, TCO, and theory.</description>
<generator>quarto-1.9.37</generator>
<lastBuildDate>Sat, 09 May 2026 22:00:00 GMT</lastBuildDate>
<item>
  <title>The True Cost of Ownership: Deconstructing a 7-Year Toyota RAV4 Hybrid Investment</title>
  <dc:creator>Rihards Kolkovskis</dc:creator>
  <link>https://4008004.xyz/en/posts/tco_cars/</link>
  <description><![CDATA[ 





<p><img src="https://4008004.xyz/en/posts/tco_cars/thumbnail.png" class="img-fluid"></p>
<section id="introduction-the-tco-illusion" class="level2 page-columns page-full" data-number="1">
<h2 data-number="1" class="anchored" data-anchor-id="introduction-the-tco-illusion"><span class="header-section-number">1</span> Introduction: The TCO Illusion</h2>
<p>When we talk about how much a car costs, we usually talk about the sticker price, the monthly fuel bill, and maybe insurance. But the <em>Total Cost of Ownership</em> (TCO) is far more complex.</p>
<p>Inspired by a standard [ADAC (Allgemeiner Deutscher Automobil-Club) TCO calculation] <sup>1</sup>, I decided to reverse-engineer the true cost of my personal vehicle—a <strong>2019 Toyota RAV4 2.5 Hybrid Lounge</strong>—over 7 years and 62,000 kilometers in France.</p>
<div class="no-row-height column-margin column-container"><div id="fn1"><p><sup>1</sup>&nbsp;<em>ADAC Autokosten</em> - The standard methodology for Total Cost of Ownership in Europe, analyzing depreciation, fixed costs, operating costs, and maintenance.</p></div></div><p>What happens when you adjust generic magazine estimates for real-world French insurance rates, actual purchase prices, and the “invisible” economic forces of inflation and opportunity cost? Let’s find out.</p>
</section>
<section id="the-adac-methodology-the-four-pillars-of-automotive-cost" class="level2 page-columns page-full" data-number="2">
<h2 data-number="2" class="anchored" data-anchor-id="the-adac-methodology-the-four-pillars-of-automotive-cost"><span class="header-section-number">2</span> The ADAC Methodology: The Four Pillars of Automotive Cost</h2>
<p>To accurately track money bleeding from a car owner’s wallet, the ADAC breaks ownership down into four distinct pillars. Here is how they stack up for my specific RAV4 profile:</p>
<ul>
<li><strong>Purchase Price (2019):</strong> 32,000 € (A great deal compared to the 47,170 € list price).</li>
<li><strong>Current Value (2026):</strong> ~26,000 € <sup>2</sup></li>
<li><strong>Time Owned:</strong> 7 years (84 months)</li>
<li><strong>Distance Driven:</strong> 62,000 km (avg. ~8,857 km/year)</li>
<li><strong>Fuel Economy:</strong> 7.0 L / 100 km</li>
<li><strong>Insurance:</strong> 1,000 € / year (MAIF)<sup>3</sup></li>
</ul>
<div class="no-row-height column-margin column-container"><div id="fn2"><p><sup>2</sup>&nbsp;Current market valuations derived from <em>La Centrale</em> and <em>Leboncoin</em> used car listings in France (May 2026 data).</p></div><div id="fn3"><p><sup>3</sup>&nbsp;Real-world “Tous Risques” insurance premium from <em>MAIF</em>.</p></div></div><section id="the-breakdown" class="level3" data-number="2.1">
<h3 data-number="2.1" class="anchored" data-anchor-id="the-breakdown"><span class="header-section-number">2.1</span> The Breakdown</h3>
<table class="table">
<colgroup>
<col style="width: 25%">
<col style="width: 25%">
<col style="width: 25%">
<col style="width: 25%">
</colgroup>
<thead>
<tr class="header">
<th>Cost Pillar</th>
<th>Total Cost (7 Years)</th>
<th>Monthly</th>
<th>Per km</th>
</tr>
</thead>
<tbody>
<tr class="odd">
<td><strong>1. Wertverlust (Depreciation)</strong></td>
<td>6,000 €</td>
<td>71 €</td>
<td>9.7 ct</td>
</tr>
<tr class="even">
<td><strong>2. Betriebskosten (Operations / Fuel)</strong></td>
<td>7,578 €</td>
<td>90 €</td>
<td>12.2 ct</td>
</tr>
<tr class="odd">
<td><strong>3. Fixkosten (Insurance / Taxes)</strong></td>
<td>7,220 €</td>
<td>86 €</td>
<td>11.6 ct</td>
</tr>
<tr class="even">
<td><strong>4. Werkstattkosten (Maintenance / Tires)</strong></td>
<td>3,350 €</td>
<td>40 €</td>
<td>5.4 ct</td>
</tr>
<tr class="odd">
<td><strong>TOTAL (Nominal)</strong></td>
<td><strong>24,148 €</strong></td>
<td><strong>287 €</strong></td>
<td><strong>38.9 ct</strong></td>
</tr>
</tbody>
</table>
<p><strong>The Result:</strong> By securing the car at 32,000 €, my absolute nominal cost per kilometer sits at <strong>38.9 ct</strong>, handily beating standard generic estimates. I effectively drove a premium hybrid SUV for the depreciation profile of a budget compact car.</p>
</section>
</section>
<section id="the-alternative-reality-the-2021-tesla-model-3-comparison" class="level2 page-columns page-full" data-number="3">
<h2 data-number="3" class="anchored" data-anchor-id="the-alternative-reality-the-2021-tesla-model-3-comparison"><span class="header-section-number">3</span> The Alternative Reality: The 2021 Tesla Model 3 Comparison</h2>
<p>Could an EV have beaten this? Let’s look at the “Golden Era” of French EVs. In 2021, the government handed out a massive 7,000 € ecological bonus<sup>4</sup>. You could drive a new Model 3 off the lot for ~36,800 €.</p>
<div class="no-row-height column-margin column-container"><div id="fn4"><p><sup>4</sup>&nbsp;French <em>Bonus Écologique</em> conditions for 2021, which granted up to 7,000 € for EVs purchased under 45,000 €.</p></div></div><p>Over 5 years (matching the 62,000 km): * <strong>Fuel (Electricity):</strong> ~1,860 € (vs.&nbsp;7,378 € for the RAV4). * <strong>Depreciation:</strong> Dropped from 36,800 € to ~25,500 € (largely dragged down by Tesla’s aggressive factory price cuts). * <strong>Total Cost per km:</strong> <strong>~32.1 ct/km</strong></p>
<p><strong>Verdict:</strong> The Tesla would have been mathematically cheaper strictly due to state subsidies and home charging. However, as EV factory prices fluctuate wildly, the <em>predictability</em> of the RAV4 provides immense peace of mind.</p>
</section>
<section id="entering-the-matrix-real-costs-vs.-opportunity-capital" class="level2 page-columns page-full" data-number="4">
<h2 data-number="4" class="anchored" data-anchor-id="entering-the-matrix-real-costs-vs.-opportunity-capital"><span class="header-section-number">4</span> Entering the Matrix: Real Costs vs.&nbsp;Opportunity Capital</h2>
<p>Up until now, we’ve used <strong>Nominal Costs</strong> (the literal euros leaving the bank account). But to truly act like a financial analyst, we must introduce the two silent forces of economics: <strong>Inflation</strong> and <strong>Opportunity Cost</strong>.</p>
<section id="the-inflation-paradox" class="level3 page-columns page-full" data-number="4.1">
<h3 data-number="4.1" class="anchored" data-anchor-id="the-inflation-paradox"><span class="header-section-number">4.1</span> The Inflation Paradox</h3>
<p>Between 2019 and 2026, France experienced roughly 20% cumulative inflation<sup>5</sup>. * The 32,000 € I spent in 2019 was “strong” money. * The 26,000 € the car is worth today is “weak” money.</p>
<div class="no-row-height column-margin column-container"><div id="fn5"><p><sup>5</sup>&nbsp;Cumulative inflation data based on <em>INSEE</em> (Institut national de la statistique et des études économiques) indices from 2019 to 2026.</p></div></div><p>Adjusted for 2019 purchasing power, the 26,000 € resale value is really only worth about 21,600 €. So, my <em>real</em> depreciation is closer to 10,400 €, not 6,000 €. (Though conversely, paying my 2025 insurance premium with weaker 2025 euros softens the blow).</p>
</section>
<section id="the-opportunity-cost-of-cash" class="level3 page-columns page-full" data-number="4.2">
<h3 data-number="4.2" class="anchored" data-anchor-id="the-opportunity-cost-of-cash"><span class="header-section-number">4.2</span> The Opportunity Cost of Cash</h3>
<p>By dropping 32,000 € in cash on a Toyota in 2019, that money was legally barred from earning yield.</p>
<p>If I had invested that 32,000 € into a standard, tax-free French Livret A or LDDS account (averaging a conservative 2% return over those chaotic years)<sup>6</sup>:</p>
<div class="no-row-height column-margin column-container"><div id="fn6"><p><sup>6</sup>&nbsp;Historical <em>Livret A</em> rates, which fluctuated between 0.50% (2020) and 3.00% (2023-2025), stabilized at a conservative 2% average for the formula.</p></div></div><p><img src="https://latex.codecogs.com/png.latex?FV%20=%20PV(1%20+%20r)%5Et"> <img src="https://latex.codecogs.com/png.latex?FV%20=%2032,000(1%20+%200.02)%5E7%20%5Capprox%2036,758%20"></p>
<p>By tying up the cash in the car, I paid an invisible “opportunity tax” of <strong>4,758 €</strong> in missed, guaranteed interest.</p>
</section>
</section>
<section id="conclusion-the-true-economic-tco" class="level2" data-number="5">
<h2 data-number="5" class="anchored" data-anchor-id="conclusion-the-true-economic-tco"><span class="header-section-number">5</span> Conclusion: The True “Economic” TCO</h2>
<p>When we combine the nominal costs (24,148 €) with the invisible opportunity cost of tied-up capital (4,758 €), the true, unvarnished Economic Cost over the last 7 years is:</p>
<ul>
<li><strong>Total Economic Expense:</strong> <strong>28,906 €</strong></li>
<li><strong>True Economic Cost per Month:</strong> <strong>344 €</strong></li>
<li><strong>True Economic Cost per Kilometer:</strong> <strong>46.6 ct</strong></li>
</ul>
<p>Even subjected to the most ruthless economic standards, 46.6 ct/km is an outstanding figure for a spacious, reliable family SUV over a 7-year timeframe. Buying the right car, at the right time, at the right price, remains one of the best ways to shield your net worth from depreciation.</p>
</section>
<section id="interactive-tco-calculator" class="level2 page-columns page-full" data-number="6">
<h2 data-number="6" class="anchored" data-anchor-id="interactive-tco-calculator"><span class="header-section-number">6</span> Interactive TCO Calculator</h2>
<p><em>Adjust the sliders below to see how different variables impact your economic TCO.</em></p>
<div class="column-page-right">
<div class="cell">
<div class="code-copy-outer-scaffold"><div class="sourceCode cell-code hidden" id="cb1" data-startfrom="105" data-source-offset="-29" style="background: #f1f3f5;"><pre class="sourceCode js code-with-copy"><code class="sourceCode javascript" style="counter-reset: source-line 104;"><span id="cb1-105">viewof price <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">5000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">70000</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">32000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Purchase Price (€)"</span>})</span>
<span id="cb1-106">viewof resale <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">2000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">40000</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">26000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">500</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Resale Value at End (€)"</span>})</span>
<span id="cb1-107">viewof years_planned <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">10</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">7</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Projection Years"</span>})</span>
<span id="cb1-108">viewof yearly_km <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">2000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">40000</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">8800</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">100</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Yearly KM"</span>})</span>
<span id="cb1-109">viewof efficiency <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">2</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">15</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">7.0</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">0.1</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Fuel Economy (L/100km)"</span>})</span>
<span id="cb1-110">viewof fuel_price <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">1.0</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">2.5</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">1.85</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">0.01</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Fuel Price (€/L)"</span>})</span>
<span id="cb1-111">viewof insurance <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> Inputs<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>([<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">200</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">3000</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">value</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1000</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">step</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">50</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Yearly Insurance (€)"</span>})</span>
<span id="cb1-112"></span>
<span id="cb1-113"></span>
<span id="cb1-114"></span>
<span id="cb1-115"><span class="co" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">// 2. The Logic</span></span>
<span id="cb1-116">annual_fuel <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> (yearly_km <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">/</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">100</span>) <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> efficiency <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> fuel_price<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span></span>
<span id="cb1-117">annual_fixed <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> insurance<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span> </span>
<span id="cb1-118">total_annual_op_cost <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> annual_fuel <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">+</span> annual_fixed<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span></span>
<span id="cb1-119"></span>
<span id="cb1-120">tco_data <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> d3<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">range</span>(<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">11</span>)<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">map</span>(year <span class="kw" style="color: #003B4F;
background-color: null;
font-weight: bold;
font-style: inherit;">=&gt;</span> {</span>
<span id="cb1-121">  <span class="kw" style="color: #003B4F;
background-color: null;
font-weight: bold;
font-style: inherit;">const</span> depreciation_step <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> (price <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">-</span> resale) <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">/</span> years_planned<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span></span>
<span id="cb1-122">  <span class="kw" style="color: #003B4F;
background-color: null;
font-weight: bold;
font-style: inherit;">const</span> current_depreciation <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">=</span> <span class="bu" style="color: null;
background-color: null;
font-style: inherit;">Math</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">min</span>(price <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">-</span> resale<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> depreciation_step <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> year)<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span></span>
<span id="cb1-123">  <span class="cf" style="color: #003B4F;
background-color: null;
font-weight: bold;
font-style: inherit;">return</span> { <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">year</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> year<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">cost</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> current_depreciation <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">+</span> (total_annual_op_cost <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> year) }<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">;</span></span>
<span id="cb1-124">})</span>
<span id="cb1-125"></span>
<span id="cb1-126"><span class="co" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">// 3. The Visuals</span></span>
<span id="cb1-127">Plot<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">plot</span>({</span>
<span id="cb1-128">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">width</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> width<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="co" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">// Tells Observable to dynamically fill the page-right column</span></span>
<span id="cb1-129">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">style</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> { <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">fontSize</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"22px"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">fontFamily</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"inherit"</span> }<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-130">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">marginLeft</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">90</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-131">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">marginBottom</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">50</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-132">  </span>
<span id="cb1-133">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">grid</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="kw" style="color: #003B4F;
background-color: null;
font-weight: bold;
font-style: inherit;">true</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-134">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">y</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> { <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Cumulative Economic Cost (€)"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">format</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">","</span> }<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-135">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">x</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> { <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">label</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"Years of Ownership"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">ticks</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">10</span> }<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-136">  <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">marks</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> [</span>
<span id="cb1-137">    Plot<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">areaY</span>(tco_data<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">x</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"year"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">y</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"cost"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">fill</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"#3b82f6"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">fillOpacity</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="fl" style="color: #AD0000;
background-color: null;
font-style: inherit;">0.1</span>})<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-138">    Plot<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">lineY</span>(tco_data<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">x</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"year"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">y</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"cost"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">stroke</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"#3b82f6"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">strokeWidth</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">2</span>})<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-139">    Plot<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">dot</span>(tco_data<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">x</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"year"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">y</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"cost"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">fill</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"#3b82f6"</span>})<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span></span>
<span id="cb1-140">    Plot<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">ruleX</span>([years_planned]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> {<span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">stroke</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"red"</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">,</span> <span class="dt" style="color: #AD0000;
background-color: null;
font-style: inherit;">strokeDasharray</span><span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">:</span> <span class="st" style="color: #20794D;
background-color: null;
font-style: inherit;">"4,4"</span>})</span>
<span id="cb1-141">  ]</span>
<span id="cb1-142">})</span></code></pre></div></div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-1" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-2" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-3" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-4" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-5" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-6" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-7" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-8" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-9" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-10" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-11" data-nodetype="declaration">

</div>
</div>
</div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-12" data-nodetype="expression">

</div>
</div>
</div>
<div class="code-copy-outer-scaffold"><div class="sourceCode cell-code hidden" id="cb2" data-startfrom="144" data-source-offset="-1845" style="background: #f1f3f5;"><pre class="sourceCode js code-with-copy"><code class="sourceCode javascript" style="counter-reset: source-line 143;"><span id="cb2-144"><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">md</span><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">`</span></span>
<span id="cb2-145"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">### Analysis for Year </span><span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">${</span>years_planned<span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">}</span></span>
<span id="cb2-146"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">| Metric | Value |</span></span>
<span id="cb2-147"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">|---|---|</span></span>
<span id="cb2-148"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">| **Total Fuel (Cumulative)** | </span><span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">${</span>(annual_fuel <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> years_planned)<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">toLocaleString</span>()<span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">}</span><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;"> € |</span></span>
<span id="cb2-149"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">| **Total Insurance (Cumulative)** | </span><span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">${</span>(insurance <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> years_planned)<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">toLocaleString</span>()<span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">}</span><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;"> € |</span></span>
<span id="cb2-150"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">| **Estimated TCO per KM** | **</span><span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">${</span>(tco_data[years_planned<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">-</span><span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">1</span>]<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="at" style="color: #657422;
background-color: null;
font-style: inherit;">cost</span> <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">/</span> (yearly_km <span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">*</span> years_planned))<span class="op" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">.</span><span class="fu" style="color: #4758AB;
background-color: null;
font-style: inherit;">toFixed</span>(<span class="dv" style="color: #AD0000;
background-color: null;
font-style: inherit;">3</span>)<span class="sc" style="color: #5E5E5E;
background-color: null;
font-style: inherit;">}</span><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;"> €** |</span></span>
<span id="cb2-151"><span class="vs" style="color: #20794D;
background-color: null;
font-style: inherit;">`</span></span></code></pre></div></div>
<div class="cell-output cell-output-display">
<div>
<div id="ojs-cell-1-13" data-nodetype="expression">

</div>
</div>
</div>
</div>
</div>
<hr>


</section>


 ]]></description>
  <category>Personal Finance</category>
  <category>Automotive</category>
  <category>Economics</category>
  <guid>https://4008004.xyz/en/posts/tco_cars/</guid>
  <pubDate>Sat, 09 May 2026 22:00:00 GMT</pubDate>
</item>
</channel>
</rss>
