<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[Code to Financial Independence]]></title><description><![CDATA[Cracking the code of financial freedom: 10 years in FAANG, sharing unfiltered insights on personal finance, financial independence/retire early & growth for tech professionals.]]></description><link>https://www.codetofire.com</link><image><url>https://substackcdn.com/image/fetch/$s_!IkeL!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa481eb62-acd0-43f4-a5bd-1579ebcd303a_500x500.png</url><title>Code to Financial Independence</title><link>https://www.codetofire.com</link></image><generator>Substack</generator><lastBuildDate>Wed, 08 Apr 2026 00:21:12 GMT</lastBuildDate><atom:link href="https://www.codetofire.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[Nikhil Khorwal]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[codetofire@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[codetofire@substack.com]]></itunes:email><itunes:name><![CDATA[Nikhil Chandra]]></itunes:name></itunes:owner><itunes:author><![CDATA[Nikhil Chandra]]></itunes:author><googleplay:owner><![CDATA[codetofire@substack.com]]></googleplay:owner><googleplay:email><![CDATA[codetofire@substack.com]]></googleplay:email><googleplay:author><![CDATA[Nikhil Chandra]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[Chapter 5: Real-World Cloud Cost Breakdowns -  Cloud bills are just code you haven’t optimized yet.]]></title><description><![CDATA[Part 5 of 5: The Engineer's Guide to Service Cost Estimation]]></description><link>https://www.codetofire.com/p/chapter-5-real-world-cloud-cost-breakdowns</link><guid isPermaLink="false">https://www.codetofire.com/p/chapter-5-real-world-cloud-cost-breakdowns</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 23 Mar 2026 13:45:53 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!a8Zd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!a8Zd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!a8Zd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 424w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 848w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 1272w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!a8Zd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png" width="1456" height="849" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:849,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2709733,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!a8Zd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 424w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 848w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 1272w, https://substackcdn.com/image/fetch/$s_!a8Zd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fccbdaa00-7eee-4783-9210-018f3dc98e6b_1488x868.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Theory is useful. Production data is convincing. In this final installment, I&#8217;m sharing three real-world cost breakdowns from systems I&#8217;ve built and operated &#8212; each illustrating different cost patterns, different optimization strategies, and different lessons for how to think about cloud economics at scale.</p><h2>Case Study 1: Prime Video&#8217;s Catalog Feed Generation Platform</h2><h3>The Architecture and Its Cost Structure</h3><p>A global digital streaming service distributes content to 200+ countries through dozens of external platform partners, including smart TV manufacturers, device ecosystems, and telecom distribution platforms. Each partner requires structured catalog feeds containing metadata, availability windows, pricing, and localized content descriptions in multiple formats and languages. A centralized video supply chain organization manages this infrastructure, and the catalog feed generation system was the specific component I analyzed and optimized.</p><p>The architecture worked as follows: the service&#8217;s canonical catalog data store maintained distributed database projections across multiple cloud regions. Processing clusters in each region read from the local database replicas, transformed catalog metadata, and wrote consolidated snapshots to centralized object storage in a primary region. From there, the system generated partner-specific feeds &#8212; each requiring different schemas, mappings, and content filters &#8212; for every combination of feed type and marketplace. Each feed-marketplace combination ran as an independent processing job to support customization and scaling needs.</p><p>Monthly bill: approximately <strong>$400K</strong>.</p><h3>Decomposing the Bill</h3><p>When I first pulled the cost breakdown from AWS Cost Explorer, the top-level categories were misleading:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!kj5q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!kj5q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 424w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 848w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 1272w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!kj5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png" width="1280" height="590" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:590,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:84999,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!kj5q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 424w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 848w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 1272w, https://substackcdn.com/image/fetch/$s_!kj5q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa2bb1b16-cbdb-4a81-9b35-ded03886c447_1280x590.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>&#8220;EC2-Other&#8221; sounds like it should be compute-adjacent. It wasn&#8217;t. Decomposing by usage type told the real story. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-65V!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-65V!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 424w, https://substackcdn.com/image/fetch/$s_!-65V!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 848w, https://substackcdn.com/image/fetch/$s_!-65V!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 1272w, https://substackcdn.com/image/fetch/$s_!-65V!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-65V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png" width="1298" height="436" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:436,&quot;width&quot;:1298,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:70016,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-65V!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 424w, https://substackcdn.com/image/fetch/$s_!-65V!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 848w, https://substackcdn.com/image/fetch/$s_!-65V!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 1272w, https://substackcdn.com/image/fetch/$s_!-65V!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F75e90b9a-5d6a-42f9-a11a-e2d552748073_1298x436.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The $200K &#8220;EC2&#8221; bill was overwhelmingly <strong>NAT Gateway data transfer</strong> &#8212; the cost of moving catalog snapshots across regions through NAT Gateways. Actual EBS costs were negligible. </p><p>The S3 pattern was identical:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!5qJf!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!5qJf!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 424w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 848w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 1272w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!5qJf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png" width="1294" height="430" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7772d74-30f0-4593-999a-81f973aa81df_1294x430.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:430,&quot;width&quot;:1294,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:77658,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!5qJf!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 424w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 848w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 1272w, https://substackcdn.com/image/fetch/$s_!5qJf!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7772d74-30f0-4593-999a-81f973aa81df_1294x430.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>75% of S3 costs were cross-region data transfer. Storage itself &#8212; the thing S3 is named for &#8212; was 26%.</p><h3>The Root Cause: Full-Snapshot Architecture</h3><p>The architectural limitation driving these costs was straightforward: the feed generation system could not operate on incremental updates. Each execution required a full catalog export from every region, with the complete dataset transferred to a central region for processing. For a catalog containing millions of titles, that meant moving the entire dataset on every run &#8212; even though only a small fraction of entries typically changed between runs.</p><p>This approach made sense when the system was originally designed at a much smaller scale. But as the catalog expanded, costs grew linearly with total catalog size rather than with actual change volume. In other words, infrastructure spend scaled with data footprint, not with meaningful updates.</p><p>Per-unit cost metrics made the inefficiency visible. The cost per thousand titles revealed that a majority of the per-title processing expense &#8212; over 60% in this case &#8212; was driven by cross-region data transfer rather than compute or transformation work. Without that decomposition, the dominant cost driver would have remained obscured inside aggregate infrastructure spend.</p><h3><strong>Two Optimizations, $1.74M in Annual Savings</strong></h3><p><strong>Optimization 1: Incremental Data Transfer.</strong><br>As part of a broader evolution of the feed generation architecture, the system was redesigned to operate on incremental catalog changes rather than full snapshots. Instead of copying entire database tables across regions during every processing cycle, only the delta &#8212; titles that had been added, modified, or removed since the previous run &#8212; was transferred. In a catalog where daily change rates represented only a small fraction of total size, this dramatically reduced data transfer volume and associated costs.</p><p><strong>Projected impact:</strong> roughly a 50% reduction in per-stream supply chain cost, saving approximately <strong>$1.2M annually</strong>.</p><p><strong>Optimization 2: Eliminate Duplicate Storage.</strong><br>The system previously maintained catalog data across two storage layers &#8212; a distributed database used for projections and object storage used for feed generation. By evolving the architecture to rely on object storage as the primary processing source, the system eliminated the need to maintain redundant projections, removing a significant portion of provisioned capacity costs.</p><p><strong>Projected impact:</strong> approximately a 10% reduction in per-stream supply chain cost, saving <strong>$540K annually</strong>.</p><p><strong>Combined impact:</strong> these changes reduced per-unit supply chain cost by roughly <strong>60%</strong>, lowering projected monthly infrastructure spend from approximately <strong>$400K to about $250K</strong>, while maintaining the same catalog and partner delivery capabilities.</p><h3>The Broader Platform Transformation</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!llIu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!llIu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 424w, https://substackcdn.com/image/fetch/$s_!llIu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 848w, https://substackcdn.com/image/fetch/$s_!llIu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 1272w, https://substackcdn.com/image/fetch/$s_!llIu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!llIu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png" width="1456" height="587" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:587,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:276276,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!llIu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 424w, https://substackcdn.com/image/fetch/$s_!llIu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 848w, https://substackcdn.com/image/fetch/$s_!llIu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 1272w, https://substackcdn.com/image/fetch/$s_!llIu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcb93efe0-cd72-44ec-ba8a-7e010b117fff_1760x710.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The cost optimization was part of a larger architectural shift from batch-oriented feed generation to a notification-based, event-driven platform. The legacy system ran scheduled jobs; the new platform propagated catalog changes as events, triggering feed updates only when data actually changed.</p><blockquote><p>The per-unit cost framework made the business case quantifiable. Without per-unit metrics, the argument for redesigning a system that was already functioning would have remained largely qualitative. With clear cost-per-unit measurements in place, the projected <strong>$1.74M in annual savings</strong> became concrete and trackable. The migration plan also explicitly accounted for the temporary cost increase during the period when both old and new systems operated in parallel, ensuring leadership expectations were aligned and avoiding surprises during the transition.</p></blockquote><h2>Case Study 2: Cart Progress Bar System &#8212; $86/Month, $900M+ Impact</h2><p>This case study is the inverse of the feeds system: instead of optimizing a high-cost platform, it demonstrates how a well-designed serverless architecture keeps costs almost irrelevant while the business impact scales independently.</p><h3>The System</h3><p>The Progressive Cart Incentive Platform shows customers their real-time progress toward free shipping thresholds as they add items to their cart. It processes millions of cart updates monthly, performing real-time price and shipping calculations to render a progress indicator. The design I implemented used behavioral economics principles &#8212; variable reward thresholds, dynamic messaging &#8212; to influence purchasing behavior.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!sfnd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!sfnd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 424w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 848w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 1272w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!sfnd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png" width="1456" height="767" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:767,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:280994,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!sfnd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 424w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 848w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 1272w, https://substackcdn.com/image/fetch/$s_!sfnd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7c64d584-2554-4d24-ae06-5c2688a66543_1500x790.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xWzx!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xWzx!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 424w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 848w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 1272w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xWzx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png" width="1280" height="968" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:968,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:144202,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xWzx!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 424w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 848w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 1272w, https://substackcdn.com/image/fetch/$s_!xWzx!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5ba6c89b-055d-41ef-b426-eec2e15264b7_1280x968.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Why This Architecture Works Economically</h3><p>Three architectural decisions kept costs minimal:</p><p><strong>Purely event-driven.</strong> Lambda and DynamoDB on-demand mean zero idle costs. At 3 AM when cart activity drops to near zero, the bill drops proportionally. There&#8217;s no EC2 fleet running at 5% utilization overnight.</p><p><strong>Minimal data footprint.</strong> Each cart calculation requires reading the current cart state (small DynamoDB record) and the applicable threshold configuration. No large datasets, no cross-region replication, no batch processing.</p><p><strong>Computation at the edge of the request.</strong> The progress calculation happens synchronously within the cart update request &#8212; there&#8217;s no separate processing pipeline, no queue, no asynchronous worker fleet. One request in, one response out, one DynamoDB write for state.</p><h3>The Unit Economics</h3><pre><code><code>Cost Per Cart Update: $86.38 &#247; 10M = $0.0000086
Business Impact: $900,000,000+ annually
Cost/Revenue Ratio: 0.0000096%</code></code></pre><blockquote><p>This is the kind of system where the ROI conversation is almost absurd &#8212; the infrastructure is a rounding error against the business value. But the cost estimation frameworks still matter here. If you&#8217;d designed this system with provisioned EC2 instances, an SQS queue for async processing, and a separate DynamoDB table with provisioned capacity, the same functionality would cost 10&#8211;50x more. <strong>The architecture </strong><em><strong>is</strong></em><strong> the cost optimization.</strong></p></blockquote><p>The impact of this approach extended beyond Amazon. Within 30 months of launch, competitors including Instacart, DoorDash, and other major e-commerce platforms implemented similar progressive cart incentive patterns &#8212; suggesting the underlying design had broader industry relevance.</p><h2>Case Study 3: Ultra-Fast Delivery Cost Modeling</h2><p>Ultra-fast delivery systems are a different beast entirely. They blend physical logistics with technology infrastructure, creating a cost model where cloud spend is actually the <em>smaller</em> component.</p><h3>Multi-Modal Cost Drivers</h3><p>Unlike traditional software services, delivery systems have physical infrastructure (fulfillment centers, vehicles), technology infrastructure (routing, tracking, optimization), human resources (drivers, warehouse staff), and variable density (urban vs suburban vs rural costs). <strong>The cost estimation frameworks from Parts 2 and 3 apply to the technology layer,</strong> <strong>but the physical layer introduces fixed costs and density effects that change the optimization calculus.</strong></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hQwH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hQwH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 424w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 848w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 1272w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hQwH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png" width="1280" height="1018" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1018,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:190912,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hQwH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 424w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 848w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 1272w, https://substackcdn.com/image/fetch/$s_!hQwH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcfda64a5-6af9-4dc1-8a97-84fae8a47ce6_1280x1018.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>The Critical Mass Effect</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZbCj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZbCj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 424w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 848w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 1272w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZbCj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png" width="1456" height="806" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:806,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:187155,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZbCj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 424w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 848w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 1272w, https://substackcdn.com/image/fetch/$s_!ZbCj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd2192c02-3838-4836-8a38-56f0545c32bb_1661x920.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The most important cost dynamic in delivery systems is the <strong>critical mass effect</strong>: fixed infrastructure costs (fulfillment centers, vehicles, technology platform) drop dramatically per delivery as volume increases, while variable costs (driver time, fuel) remain roughly linear.</p><p>That 66% improvement wasn&#8217;t from technology optimization alone. It came from density &#8212; more deliveries per geographic area, more orders per driver-hour, better utilization of fixed infrastructure. The technology layer enabled this through route optimization algorithms that improved delivery density by 40%, reducing average delivery time by 15%.</p><h3>Storage vs. Throughput in Delivery</h3><p><strong>Storage-Driven Costs (Geographic Infrastructure):</strong> Fulfillment center leases (per sq ft/year), vehicle fleet (per vehicle/month), and inventory holding (per item/day). These exist whether you deliver zero packages or a thousand.</p><p><strong>Throughput-Driven Costs (Per-Delivery Operations):</strong> Driver wages ($15&#8211;25/hour), fuel/maintenance ($0.56/mile), route optimization ($0.10/delivery), and customer notifications ($0.02/order). These scale linearly with volume.</p><p>The key insight for cost estimation: at low volume, storage-driven costs dominate (you&#8217;re paying for fulfillment centers and vehicles regardless of utilization). At high volume, throughput-driven costs dominate (every incremental delivery&#8217;s marginal cost is mostly driver time and fuel). </p><blockquote><p>The crossover point &#8212; where per-delivery cost stabilizes &#8212; is your breakeven density. Identifying that threshold early is critical for geographic expansion decisions.</p></blockquote><p>For the infrastructure I built, the technology platform maintained 99.9% uptime during peak demand while supporting sub-same-day delivery windows. The inventory positioning algorithms reduced fulfillment costs by 23% by predicting demand patterns and pre-positioning stock closer to likely delivery zones.</p><h2>Tying It All Together: Lessons Across Three Systems</h2><p>Each case study illustrates a different cost pattern, but the same estimation principles apply:</p><p><strong>The feeds system</strong> was dominated by data transfer (50% of spend), hidden inside misleading billing categories. The optimization strategy targeted the architectural root cause &#8212; full-snapshot replication &#8212; not the symptom. Per-unit metrics made the $1.74M savings opportunity visible and trackable.</p><p><strong>The cart system</strong> was dominated by nothing &#8212; every component was cheap because the architecture eliminated idle costs, minimized data movement, and kept computation synchronous. The lesson isn&#8217;t &#8220;use serverless&#8221; &#8212; it&#8217;s that the most impactful cost optimization happens at design time, not after the bill arrives.</p><p><strong>The delivery system</strong> demonstrated the critical mass effect: fixed costs that seem overwhelming at low volume become negligible at scale, while variable costs remain linear. Estimating delivery economics requires modeling density, not just traffic.</p><h3>The Principles That Hold Across All Three</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!4zlp!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!4zlp!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 424w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 848w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 1272w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!4zlp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png" width="1456" height="587" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:587,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:243017,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188339660?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!4zlp!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 424w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 848w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 1272w, https://substackcdn.com/image/fetch/$s_!4zlp!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc2067020-23d6-4b0a-8f52-e45be50f1664_1860x750.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Every cost is either storage-driven or throughput-driven.</strong> Understand which dominates. It&#8217;s rarely what you assume.</p><p><strong>Calculate Cost Per Unit.</strong> $400K/month sounds alarming. $0.024 per 1K streams for a system serving 200+ countries sounds reasonable. Same bill, different framing, completely different conversation.</p><p><strong>Decompose below the billing category.</strong> EC2-Other isn&#8217;t compute. S3 isn&#8217;t storage. The real cost driver is often two levels down from what the dashboard shows.</p><p><strong>Model the time dimension.</strong> Month-one costs aren&#8217;t month-twelve costs. Storage accumulates, migrations create temporary spikes, and density effects change unit economics over time.</p><p><strong>Find your dominant cost driver.</strong> In the feeds system, two optimizations targeting 60% of spend delivered $1.74M in savings. In the cart system, the dominant cost driver was... nothing, because the architecture was designed with cost as a constraint. In delivery, density was the lever that moved everything.</p><p><strong>Build the bridge.</strong> When costs change, categorize why. The explanation isn&#8217;t bureaucracy &#8212; it&#8217;s the mechanism that turns cost data into engineering decisions.</p><p>The best engineers I&#8217;ve worked with think about cost as a feature requirement, not an afterthought. They estimate before building, monitor during operation, and optimize continuously. Every system in this series was built with that mindset.</p><div><hr></div><p><em>This concludes the 5-part series on Service Cost Estimation. If you found it valuable, share it with your engineering team &#8212; especially the ones who just got a surprise cloud bill.</em></p><p><strong>Tags:</strong> #cloud #aws #costoptimization #engineering #finops #systemdesign #architecture</p>]]></content:encoded></item><item><title><![CDATA[Chapter 4: The Cost Monitoring Playbook - Catching Problems Before They Hit Your Budget]]></title><description><![CDATA[Part 4 of 5: The Engineer's Guide to Service Cost Estimation]]></description><link>https://www.codetofire.com/p/chapter-4-the-cost-monitoring-playbook</link><guid isPermaLink="false">https://www.codetofire.com/p/chapter-4-the-cost-monitoring-playbook</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 09 Mar 2026 13:45:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ataK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ataK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ataK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ataK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ataK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ataK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ataK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3495523,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188221078?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ataK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!ataK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!ataK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!ataK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F62c75a51-e777-4cad-bb80-c133b5b71366_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Estimation without monitoring is guessing twice &#8212; once when you plan, and again when you can&#8217;t explain why the bill is 40% higher than expected. This part covers the operational side: the monitoring stack every service needs, the cost accountability model that keeps teams honest, the mistakes that blow up even good estimates, and a comprehensive checklist to run before committing budget.</p><h2>The Cost Monitoring Stack</h2><p>Here&#8217;s the minimum viable cost monitoring setup every service should have from day one.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AfoB!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AfoB!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 424w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 848w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 1272w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AfoB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png" width="1456" height="783" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:783,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:284565,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188221078?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!AfoB!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 424w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 848w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 1272w, https://substackcdn.com/image/fetch/$s_!AfoB!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1945ee45-5cfb-4abb-8c84-8e0a1f2a6c6c_1600x860.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Daily Cost Tracking</h3><p>Track daily spend and compare to budget. Catch anomalies early. A 40% daily spike is easier to investigate than a 40% monthly surprise. Set your alert threshold at 10% over daily budget and your escalation threshold at 25% over.</p><h3>Cost Per Unit Trending</h3><p>This is the most valuable signal in your monitoring stack. Track your Cost Per Unit over time. If Cost Per Unit spikes while traffic is flat, you have an efficiency problem &#8212; a code change introduced more database calls, a cache stopped working, or a logging change increased volume. This is the metric that separates teams who react to cost problems from teams who prevent them.</p><h3>Component Cost Breakdown</h3><p>Know where your money goes. This tells you where to focus optimization efforts. Cutting compute by 20% saves $360. Cutting &#8220;Other&#8221; by 20% saves $60. Always optimize the largest component first.</p><h2>The Bridge Methodology: Making Cost Accountability Work</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!LFba!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!LFba!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 424w, https://substackcdn.com/image/fetch/$s_!LFba!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 848w, https://substackcdn.com/image/fetch/$s_!LFba!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 1272w, https://substackcdn.com/image/fetch/$s_!LFba!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!LFba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png" width="1456" height="891" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/edd51641-257e-40ae-858e-14306107a04c_1670x1022.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:891,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:300548,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188221078?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!LFba!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 424w, https://substackcdn.com/image/fetch/$s_!LFba!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 848w, https://substackcdn.com/image/fetch/$s_!LFba!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 1272w, https://substackcdn.com/image/fetch/$s_!LFba!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fedd51641-257e-40ae-858e-14306107a04c_1670x1022.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Monitoring tells you <em>what</em> changed. The bridge methodology tells you <em>why</em>.</p><p>When costs escalate faster than your business metric, someone needs to explain the gap. Not as punishment &#8212; as engineering rigor. The best cost cultures I&#8217;ve worked in required teams to categorize every cost delta into one of these buckets:</p><p><strong>1. New Service Launch.</strong> A new component went live. You can quantify the per-unit cost it adds and when it&#8217;s expected to reach steady state. Example: &#8220;New policy validation service launched in Q3, adding $0.003 to cost per unit. Expected to stabilize by Q1 next year.&#8221;</p><p><strong>2. New Feature in Existing Service.</strong> An existing service grew in scope. Example: &#8220;Added multi-language metadata enrichment, adding $0.001 per title for 12 additional language variants.&#8221;</p><p><strong>3. Extended Coverage.</strong> Your service now processes more of the catalog or handles more edge cases. Example: &#8220;Coverage extended from 89% to 95% of titles, processing an additional 210K titles that adds $X to annual cost.&#8221;</p><p><strong>4. Migration or Tech Debt Overlap.</strong> You&#8217;re running old and new systems in parallel during a transition. This is common and expected &#8212; but it needs a bounded timeline. Example: &#8220;A migration requires dual-pipeline operation through Q4 2020, temporarily increasing cost per unit by 1.5x. Cost converges after A/B validation.&#8221;</p><p><strong>5. Forecast Update.</strong> Your original capacity plan was wrong or based on outdated assumptions. Correct the forecast and explain the revision.</p><p><strong>6. System Inefficiency.</strong> Unplanned demand or suboptimal resource allocation. Example: &#8220;High usage of on-demand EC2 instances instead of reserved instances during traffic spikes.&#8221;</p><p><strong>7. Other.</strong> Anything that doesn&#8217;t fit the above. Rare, but available.</p><p>The discipline isn&#8217;t bureaucratic &#8212; it&#8217;s clarifying. If your service&#8217;s cost per unit increased by 10 cents year-over-year, the bridge tells you exactly where each of those 10 cents went. That clarity is what lets you distinguish between investment (new features your customers need) and waste (architecture decisions that should be revisited).</p><blockquote><p>In our organization, this bridge was reviewed weekly. The review surfaced a critical insight: roughly $1.2M/year in costs was attributable to the architectural limitation of copying full DynamoDB snapshots across regions rather than transferring incremental changes. That wasn&#8217;t a failure &#8212; it was a known tradeoff from the original architecture. But making it visible through the per-unit cost bridge created the business case for the an architecture that eventually replaced it.</p></blockquote><h2>Common Estimation Mistakes (And How to Avoid Them)</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Hm2E!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Hm2E!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 424w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 848w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 1272w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Hm2E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png" width="1456" height="870" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:870,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:605446,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188221078?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Hm2E!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 424w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 848w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 1272w, https://substackcdn.com/image/fetch/$s_!Hm2E!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9d9be98a-1c5b-4bf7-8c1f-8be39ffc2fba_1650x986.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Mistake 1: Forgetting Data Transfer</h3><p>Data transfer costs are the silent killer. They rarely surface in basic pricing calculators, yet they can dominate your bill. Watch closely for cross-region replication, NAT Gateway egress (especially in containerized workloads), API response payload sizes, and cross&#8211;availability zone traffic in multi-AZ deployments.</p><p>In one large-scale distributed system I analyzed, roughly 50% of a major infrastructure cost category &#8212; about $200K per month &#8212; turned out to be cross-region data transfer rather than compute. The architecture required copying full database snapshots across multiple regions for centralized processing, and the transfer costs far exceeded the transformation costs. A deeper breakdown showed that regional NAT Gateway egress alone accounted for over $100K per month. Similarly, the majority of the object storage bill was driven by cross-region transfer fees rather than storage capacity itself.</p><p><strong>Rule of thumb:</strong> Add 15&#8211;25% to your estimate for data transfer if you haven&#8217;t explicitly calculated it.</p><h3>Mistake 2: Ignoring Idle Costs</h3><p>Some resources incur costs even when they&#8217;re barely used: managed databases, in-memory caches, load balancers, NAT gateways, and provisioned IOPS are all billed based on allocation rather than utilization. Whether traffic is at peak or trough, the meter keeps running.</p><p>In one system I reviewed, a distributed database layer accounted for roughly 12% of the monthly bill &#8212; about $48K &#8212; because it was running on provisioned capacity across three regions. Read capacity was reserved for a data processing pipeline, and write capacity supported upstream projections. The key issue: the bill remained constant regardless of actual workload. Utilization levels were significantly below the provisioned limits, meaning the system was paying for headroom it rarely consumed.</p><p>Switching to on-demand capacity &#8212; once the pipeline supported it &#8212; became an immediate cost-reduction lever. When workloads are variable or lower than expected, usage-based pricing can materially reduce spend without requiring architectural redesign.</p><h3>Mistake 3: Linear Scaling Assumptions</h3><p>Not all costs scale linearly.</p><p><strong>Costs that scale sub-linearly (good):</strong> Caching (higher traffic = better hit rates) and reserved capacity (higher commitment = lower unit cost).</p><p><strong>Costs that scale super-linearly (bad):</strong> Hotspots (traffic concentration increases costs disproportionately), rate limiting (hitting quotas triggers more expensive tiers), and retry storms (failures cascade, each retry consuming additional resources).</p><h3>Mistake 4: Snapshot Estimation</h3><p>Estimating based on current state ignores feature launches that increase per-request complexity, data accumulation over time, traffic seasonality (holiday spikes), and operational overhead (backups, DR, logging).</p><p>Build in a <strong>time dimension</strong> to your estimates. What does month 1 cost? Month 6? Month 12? As I covered in Part 3, the ratio between compute and storage shifts over time, and transitions like platform migrations can create temporary cost multipliers that need to be modeled explicitly.</p><h2>The Cost Estimation Checklist</h2><p>Before committing to a budget, verify you&#8217;ve accounted for everything.</p><p><strong>Compute:</strong> Request processing (Lambda, containers, EC2), background jobs and cron, data processing pipelines, and retry/error handling overhead.</p><p><strong>Storage:</strong> Primary data store, indexes and replicas, logs and metrics, backups and snapshots, and retention policies (defined, not &#8220;TBD&#8221;).</p><p><strong>Data Transfer:</strong> Client responses (egress), cross-region traffic, cross-AZ traffic, NAT Gateway processing, and CDN origin fetches.</p><p><strong>Supporting Services:</strong> Load balancers, API Gateway, message queues, caching layers, and monitoring/alerting.</p><p><strong>Operational:</strong> Dev/staging environments, CI/CD costs, disaster recovery, and security/compliance tooling.</p><p><strong>Growth Modeling:</strong> Per-unit cost calculated and baselined, business metric identified (titles, streams, orders, users), 12-month projection with three scenarios (low/base/high), and known cost-trajectory changes (launches, migrations, decommissions).</p><p><strong>Accountability:</strong> Bridge categories defined for cost escalation explanations, monthly review cadence established, and alert and escalation thresholds set.</p><h2>Building the Culture</h2><p>The monitoring stack, bridge methodology, and checklist are tools. The real value comes from building a culture where cost is treated as a first-class design constraint &#8212; not an afterthought.</p><p>The way I think about it: frugality isn&#8217;t about minimizing spend. It&#8217;s about ensuring every dollar is intentional. A service that costs $400K/month and delivers $900M in business value is a great investment. A service that costs $400K/month where $200K is avoidable data transfer is an architecture problem.</p><blockquote><p>The per-unit cost framework, combined with the bridge methodology, creates that distinction. It shifts the conversation from &#8220;why is your bill so high?&#8221; to &#8220;what&#8217;s driving each component of your per-unit cost, and is that the right tradeoff?&#8221; The first conversation is adversarial. The second is engineering.</p></blockquote><blockquote><p>Making this operational requires a few specific mechanisms. Design reviews should include cost projections &#8212; not as an afterthought, but as a section with the same weight as scalability and reliability. Monthly cost reviews should be driven by per-unit trends, not aggregate numbers. And when costs exceed projections, the bridge should be a standard operating procedure, not a fire drill.</p></blockquote><h2>What&#8217;s Coming in Part 5</h2><p>The final installment brings everything together with three production case studies. I&#8217;ll show the full cost breakdowns, the optimization strategies, and the specific per-unit metrics that made it all measurable: Prime Video&#8217;s content distribution at $400K+/month (optimized to save $1.74M annually through two targeted architecture changes), a cart optimization system where $86/month in infrastructure drives $900M+ in business impact, and an ultra-fast delivery platform where cost per delivery dropped from $12.50 to $4.20 through density optimization.</p><div><hr></div><p><em>Nikhil Chandra is an Engineering Manager with 11+ years of experience building high-scale e-commerce and streaming systems. He writes about engineering leadership and cloud architecture at <a href="https://codetofire.com">codetofire.com</a>. Connect on <a href="https://linkedin.com/in/nikhilchandra">LinkedIn</a>.</em></p><p><strong>Tags:</strong> #cloud #aws #costoptimization #engineering #finops #systemdesign</p>]]></content:encoded></item><item><title><![CDATA[Chapter 3: Storage Will Eat Your Budget -  Modeling Growth and Forecasting Traffic
 ]]></title><description><![CDATA[Part 3 of 5: The Engineer's Guide to Service Cost Estimation]]></description><link>https://www.codetofire.com/p/storage-will-eat-your-budget-modeling</link><guid isPermaLink="false">https://www.codetofire.com/p/storage-will-eat-your-budget-modeling</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 02 Mar 2026 14:46:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!aki5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!aki5!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!aki5!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!aki5!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!aki5!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!aki5!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!aki5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3482616,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188219095?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!aki5!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!aki5!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!aki5!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!aki5!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3e85c9ad-3538-4eee-8471-59544acf0b14_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Parts 1 and 2 covered how to estimate the cost of a service at a point in time. But costs aren&#8217;t static &#8212; they change as data accumulates, traffic grows, and the business evolves. This part tackles the time dimension: how to model storage growth and forecast traffic so your estimates hold up over months, not just at launch.</p><h2>Storage Growth Modeling</h2><p>For storage-heavy services, the key challenge is modeling growth over time. I&#8217;ve seen teams estimate month-one storage costs accurately, then get blindsided six months later when the bill has tripled because nobody modeled accumulation.</p><h3>The Storage Accumulation Formula</h3><pre><code><code>Storage at Month N = Initial Storage + (Monthly Ingest &#215; N) - (Monthly Deletion &#215; N)</code></code></pre><p>Most teams forget the deletion term, leading to runaway storage costs.</p><h3>Example: Event Log System</h3><p><strong>Parameters:</strong></p><ul><li><p>Initial storage: 100GB</p></li><li><p>Daily events: 10M</p></li><li><p>Average event size: 1KB</p></li><li><p>Retention policy: 90 days</p></li></ul><p><strong>Calculation:</strong></p><pre><code><code>Daily ingest: 10M &#215; 1KB = 10GB/day
Monthly ingest: 10GB &#215; 30 = 300GB/month
Steady-state storage: 10GB &#215; 90 days = 900GB</code></code></pre><p>After 90 days, storage stabilizes at ~900GB because old data ages out as fast as new data comes in.</p><p><strong>Monthly cost at steady state:</strong></p><pre><code><code>S3 storage: 900GB &#215; $0.023 = $20.70
S3 requests (writes): 300M &#215; $0.005/1K = $1,500
S3 requests (reads): 100M &#215; $0.0004/1K = $40
Total: ~$1,560/month</code></code></pre><blockquote><p>Notice that the request cost ($1,540) dwarfs the storage cost ($20.70). This is a common pattern &#8212; the cost of <em>accessing</em> data often exceeds the cost of <em>storing</em> it. Engineers who only model storage volume miss the dominant cost driver.</p></blockquote><h3>The Retention Policy Lever</h3><p>Retention is your biggest cost lever for storage systems:</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/YDsvo/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/34e92664-6e1a-437f-b05a-f63c966472e5_1220x392.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e4583b3a-1774-4443-a764-c73195e69a1f_1220x462.png&quot;,&quot;height&quot;:239,&quot;title&quot;:&quot;Data Retention Cost Impact&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/YDsvo/1/" width="730" height="239" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dPOj!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dPOj!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 424w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 848w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 1272w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dPOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:151635,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188219095?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dPOj!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 424w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 848w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 1272w, https://substackcdn.com/image/fetch/$s_!dPOj!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a27d08d-1c75-40c3-b9ea-cad5d8bd606a_1672x940.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>A single decision about retention &#8212; 30 days vs. 365 days &#8212; is a 12x cost difference. <strong>Always define retention policies before launch. &#8220;We&#8217;ll figure it out later&#8221; is how you end up with $50K/month log storage bills.</strong></p></blockquote><h3>Storage Modeling at Scale</h3><p>These dynamics play out dramatically at large catalog scales. In Prime Video storage-driven costs scaled with the catalog &#8212; 3.48MM titles, each requiring metadata, cross-region replicas, and feed generation artifacts. The cost per unit metric captured this: $324 per 1K titles in 2019, with $202 of that going to cross-region data transfer for maintaining synchronized catalog snapshots across AWS regions.</p><p>But the storage model wasn&#8217;t static. The catalog was projected to grow 16% year-over-year. Additionally, as part a platform unification effort &#8212; required running parallel catalog generation pipelines during the transition. This meant cost per unit would temporarily spike by 1.5x, <strong>not because of inefficiency, but because the old and new systems had to coexist until A/B testing validated the migration to ensure zero regression. </strong></p><blockquote><p>Modeling that explicitly &#8212; <em>&#8220;here&#8217;s the baseline growth trajectory, here&#8217;s the migration overlap period, here&#8217;s when it converges&#8221;</em> &#8212; was the difference between a cost increase that looked alarming and one that was planned and bounded. <strong>Without the model, a 50% cost spike triggers escalations. With the model, it triggers a review to confirm you&#8217;re tracking to the plan.</strong></p></blockquote><h2>Traffic Forecasting for Budgeting</h2><p>Estimating costs requires estimating traffic. Here&#8217;s how to do it without making up numbers.</p><h3>Method 1: Historical Growth Rate</h3><p>If you have historical data, project it forward:</p><pre><code><code>Current traffic: 100M requests/month
12-month growth rate: 8% month-over-month

Month 6 forecast: 100M &#215; (1.08)^6 = 159M
Month 12 forecast: 100M &#215; (1.08)^12 = 252M</code></code></pre><p>This is simple but dangerous &#8212; it assumes the growth rate stays constant. Fine for 3&#8211;6 month projections, unreliable beyond that.</p><h3>Method 2: Business Driver Correlation</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!QJIW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!QJIW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 424w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 848w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 1272w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!QJIW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png" width="1456" height="779" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:779,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:242267,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188219095?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!QJIW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 424w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 848w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 1272w, https://substackcdn.com/image/fetch/$s_!QJIW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F6a980e80-5788-4db1-a76d-acd7355d54a7_1720x920.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Tie traffic to business metrics you can forecast:</p><pre><code><code>Relationship: 1 order = 15 API calls
Business forecast: 2M orders/month &#8594; 3M orders/month (next year)
Traffic forecast: 30M &#8594; 45M requests/month</code></code></pre><p>This is the more reliable method because it connects to business planning rather than extrapolating technical metrics in isolation. Your finance team already forecasts orders, subscribers, or titles &#8212; piggyback on their projections.</p><p>At Prime Video, the entire cost framework was anchored to two business metrics: <strong>number of titles</strong> (which drove storage-related fleets) and <strong>number of streams</strong> (which drove compute-related fleets). A core cross-functional team identified which of the 18+ services across the organization scaled by titles versus streams. This mapping &#8212; seemingly simple &#8212; was the structural insight that made the whole cost model work.</p><p>For example, the Digital Catalog scaled with titles. So when the business forecast projected title growth from 3.48MM to a higher number in the following year, every team could immediately calculate their projected cost: current cost per unit &#215; projected title count = projected spend. <strong>No guessing, no gut-feel estimates. The business inputs drove the infrastructure math.</strong></p><h3>Method 3: Capacity Planning Tiers</h3><p>For budgeting, forecast three scenarios:</p><p>Budget for <strong>Base</strong>, alert at <strong>High</strong>, and don&#8217;t panic at <strong>Low</strong>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9QwP!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9QwP!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 424w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 848w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 1272w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9QwP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png" width="1456" height="756" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:756,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:93023,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/188219095?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9QwP!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 424w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 848w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 1272w, https://substackcdn.com/image/fetch/$s_!9QwP!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b0bffd0-75e1-4dbe-9751-b76488894930_1549x804.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>This three-tier approach is especially important when new features or programs will shift your cost trajectory. Consider how cost steps work in practice: Lambda costs scale continuously, but EC2-based services have step functions &#8212; you pay for a fixed instance until you need to add another. A good forecast identifies where those step boundaries are so you aren&#8217;t surprised when traffic crosses a threshold.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/xzowQ/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba566ba9-26b4-473b-bf3f-343f2e09112b_1220x434.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2e2533f7-9859-46d0-a8f0-12f599ab5d47_1220x504.png&quot;,&quot;height&quot;:265,&quot;title&quot;:&quot;Traffic Scenario Planning&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/xzowQ/1/" width="730" height="265" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2>Connecting Storage and Traffic Models</h2><p>In practice, storage and traffic interact. More traffic generates more logs, which grow storage. More stored data means more to replicate cross-region, which increases transfer costs. The best estimates model both dimensions together.</p><p>Here&#8217;s how I think about it:</p><pre><code><code>Month 1:
  Traffic: 50M requests &#8594; Compute cost: $500
  Storage: 100GB &#8594; Storage cost: $50
  Total: $550

Month 6:
  Traffic: 89M requests &#8594; Compute cost: $890
  Storage: 400GB (accumulated) &#8594; Storage cost: $200
  Total: $1,090

Month 12:
  Traffic: 157M requests &#8594; Compute cost: $1,570
  Storage: 700GB (approaching steady state) &#8594; Storage cost: $350
  Total: $1,920</code></code></pre><p>The ratio shifts over time. At launch, compute dominates. After a year, storage has crept up. Without modeling both, your month-12 estimate will be off by 30%+.</p><p>There&#8217;s a subtler version of this interaction that&#8217;s worth internalizing: as catalog or dataset size grows, the cost of processing that data also grows &#8212; even if traffic stays flat. For example, a large data processing platform operating on massive catalogs or datasets will naturally take longer and consume more resources as the underlying data expands. In many cases, the per-item compute cost can remain relatively stable, yet the absolute compute bill still increases simply because there is more data to process. Only by tracking cost per unit can you distinguish between cost growth driven by healthy data expansion (acceptable) and cost growth caused by declining efficiency (a problem that needs fixing).</p><h2>The Takeaway</h2><p>Storage grows silently. Traffic grows visibly. Both need explicit models with time dimensions. The frameworks in this part &#8212; storage accumulation with retention policies, traffic forecasting tied to business drivers, and three-tier capacity planning &#8212; give you the tools to project costs forward rather than just snapshot them.</p><blockquote><p>The single most impactful thing you can do is identify the business metric your service scales against, then tie your cost model directly to it. <strong>If you can say &#8220;our cost per unit is $X, the business expects Y units next year, so our projected spend is $Z&#8221; &#8212; you have a cost model that finance trusts, leadership can act on, and your team can be held accountable to.</strong></p></blockquote><p>In Part 4, I&#8217;ll shift from estimation to operation: the monitoring stack you need to catch when reality diverges from your estimates, the most common mistakes that blow budgets, and a practical checklist to run before committing to any budget.</p><p><em>Nikhil Chandra is a Engineering Manager with 11+ years of experience building high-scale e-commerce and streaming systems. He writes about engineering leadership and cloud architecture at <a href="https://codetofire.com">codetofire.com</a>. Connect on <a href="https://linkedin.com/in/nikhilchandra">LinkedIn</a>.</em></p><p><strong>Tags:</strong> #cloud #aws #costoptimization #engineering #finops #systemdesign</p>]]></content:encoded></item><item><title><![CDATA[Chapter 2: Two Frameworks for Estimating Any Cloud Service Before You Build ]]></title><description><![CDATA[Part 2 of 5: The Engineer's Guide to Service Cost Estimation]]></description><link>https://www.codetofire.com/p/chapter-2-two-frameworks-for-estimating</link><guid isPermaLink="false">https://www.codetofire.com/p/chapter-2-two-frameworks-for-estimating</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 23 Feb 2026 15:01:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!xg3C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xg3C!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xg3C!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xg3C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:3344063,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187603990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!xg3C!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!xg3C!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F353e61b4-2526-4b83-8b58-6efe0eb92c59_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In Part 1, I introduced the Cost Per Unit mental model &#8212; the foundation of all cloud cost estimation. Now let&#8217;s put it to work with two practical frameworks: one for services you&#8217;re building from scratch, and one for services similar to something you already operate.</p><h2>Framework 1: Bottom-Up Component Costing</h2><p>This framework works best for <strong>new services</strong> where you&#8217;re designing the architecture. You walk through the request path, price every component, and multiply by expected traffic.</p><h3>Step 1: List Every Billable Component</h3><p>Draw your architecture diagram and identify every component that generates a bill:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!7zUt!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!7zUt!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 424w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 848w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 1272w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!7zUt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png" width="1456" height="859" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:859,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:445531,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187603990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!7zUt!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 424w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 848w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 1272w, https://substackcdn.com/image/fetch/$s_!7zUt!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0ad86e66-fdba-40ef-bd20-48ef7d6930e0_1620x956.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Don&#8217;t forget the hidden costs that most teams miss: CloudWatch logs and metrics, load balancer hours, NAT Gateway data processing, cross-AZ data transfer, backup storage, and KMS key operations.</p><p>This is where most cost estimates fail &#8212; not on the components engineers think about, but on the ones they forget. When I designed the Progressive Cart Incentive Platform (a system that dynamically adjusts free-shipping thresholds based on real-time cart contents), the initial estimate accounted for Lambda, DynamoDB, and API Gateway. It missed CloudWatch log ingestion costs, which for a service processing millions of cart events would have been significant at scale. Catching that early let us implement log sampling before launch rather than scrambling to add it after the first bill.</p><h3>Step 2: Estimate Per-Request Cost</h3><p>For a single request flowing through your system, calculate the cost of every component it touches.</p><p><strong>Example: Simple API Service</strong></p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/pDdWG/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b267539a-2ead-48c7-85db-1ae5152b528e_1220x564.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/370df71f-09b7-443b-b67f-cddcb9272d18_1220x634.png&quot;,&quot;height&quot;:335,&quot;title&quot;:&quot;Bottom-Up Component Costing Example&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/pDdWG/1/" width="730" height="335" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><blockquote><p><strong>Cost Per 1M Requests: ~$9.70</strong></p></blockquote><h3>Step 3: Add Storage Baseline</h3><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/8k7nb/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/35b986e7-1f95-489d-8aa0-f6217900436d_1220x392.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/02ae90a9-3c55-48a4-ae08-ea1f17a19667_1220x462.png&quot;,&quot;height&quot;:239,&quot;title&quot;:&quot;Storage Costs Breakdown&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/8k7nb/1/" width="730" height="239" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h3>Step 4: Multiply by Expected Traffic</h3><p>Now apply your traffic estimate:</p><pre><code><code>Traffic: 50M requests/month
Compute costs: 50 &#215; $9.70 = $485
Storage costs: $18 (fixed)
Total: ~$503/month</code></code></pre><p>Add a <strong>20&#8211;30% buffer</strong> for unknowns: <strong>~$600&#8211;650/month</strong></p><p>This buffer isn&#8217;t padding &#8212; it&#8217;s accounting for the cross-AZ transfers, retry overhead, and operational costs that are genuinely hard to predict before launch.</p><h2>Framework 2: Analogous Service Benchmarking</h2><p>This framework works best when you&#8217;re <strong>adding features to existing services</strong> or building something similar to what you&#8217;ve built before. It&#8217;s faster than bottom-up, though less precise.</p><h3>Step 1: Find Your Analog</h3><p>Identify a similar service you already operate. Match on traffic pattern (API, batch, streaming), data model (transactional, analytical, time-series), and scale (order of magnitude).</p><h3>Step 2: Calculate the Analog&#8217;s Cost Per Unit</h3><p>Pull the actual costs from your billing:</p><pre><code><code>Service: Order Lookup API
Monthly cost: $12,400
Monthly requests: 800M
Cost Per 1M Requests: $15.50</code></code></pre><h3>Step 3: Adjust for Differences</h3><p>This is where the framework earns its keep. Identify what&#8217;s different about your new service and assign multipliers:</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/1KTzL/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a610b1fe-6ac0-4bf1-89fb-f0e472587808_1220x488.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ab413cc2-4cbf-4341-8b1d-40e6b8660bda_1220x558.png&quot;,&quot;height&quot;:294,&quot;title&quot;:&quot;Analog Service Comparison Factors&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/1KTzL/1/" width="730" height="294" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>Combined multiplier: 1.5 &#215; 2 &#215; 2.5 &#215; 1.5 = <strong>11.25x</strong></p><h3>Step 4: Calculate Estimate</h3><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!V7wh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!V7wh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 424w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 848w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 1272w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!V7wh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png" width="1456" height="538" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:538,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:183819,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187603990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!V7wh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 424w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 848w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 1272w, https://substackcdn.com/image/fetch/$s_!V7wh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fb6f9d050-fe8b-4514-bf4a-de45cc96f963_1760x650.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>When to Use Which Framework</h3><p><strong>Bottom-up</strong> when you&#8217;re building something genuinely new, when precision matters for budget approval, or when the architecture is well-defined. It takes more time but gives you component-level visibility into where costs will concentrate.</p><p><strong>Analogous</strong> when you need a quick estimate for planning, when you&#8217;re extending an existing system, or when the architecture is still fluid. It&#8217;s faster and good enough for directional decisions.</p><p>In practice, I use both &#8212; analog for the initial proposal, bottom-up to validate before committing budget. When we designed the notification-based catalog feed architecture to replace Prime Video&#8217;s batch feed generation system, I used the existing batch system ($400K/month) as the analog, then did bottom-up costing on the new event-driven design. The analog told me the order of magnitude; the bottom-up analysis showed me that by switching from full-snapshot cross-region copies to incremental event propagation, we could eliminate the dominant cost driver entirely.</p><h2>The Hidden Cost That Breaks Both Frameworks</h2><p>Both frameworks require you to be honest about hidden costs &#8212; and the one that catches the most teams is <strong>data transfer</strong>.</p><p><strong>Here&#8217;s a concrete example.</strong> A digital streaming service&#8217;s catalog content generation system operated across three AWS cloud regions. The architecture worked like this: the catalog data store maintained distributed database projections in multiple regions. Processing jobs in each region (IAD/DUB/PDX) read from the local database, transformed the data, and wrote consolidated snapshots to centralized object storage in a single region (IAD). From there, structured feeds were generated and distributed to downstream distribution partners and platforms.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!yMAH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!yMAH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 424w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 848w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 1272w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!yMAH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png" width="1456" height="765" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:765,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:604596,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187603990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!yMAH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 424w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 848w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 1272w, https://substackcdn.com/image/fetch/$s_!yMAH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F084b5e84-3a6b-4049-855e-bb8036035438_1634x858.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>The monthly bill was approximately $400K. Here&#8217;s where the money actually went:</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/rGn2U/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a4a91490-0928-4edf-9c2e-338c9629998e_1220x654.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/61bfbd8c-4139-482d-a6c8-1da540e83732_1220x724.png&quot;,&quot;height&quot;:384,&quot;title&quot;:&quot;Catalog Content Platform&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/rGn2U/1/" width="730" height="384" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>The &#8220;EC2-Other&#8221; category &#8212; which most people assume is compute-related &#8212; was dominated by NAT Gateway data transfer across regions. When I broke it down by usage type, EU-NatGateway-Bytes alone was ~$117K/month and USW2-NatGateway-Bytes was ~$68K/month. Actual EBS IOPS costs were under $1K.</p><p>Similarly, 75% of the S3 bill wasn&#8217;t storage &#8212; it was cross-region transfer fees from moving data between USE1, EU, and USW2.</p><blockquote><p>The lesson: always decompose your cost categories beyond what the billing dashboard shows you. The label on the bill rarely tells the full story. I&#8217;ll walk through the complete optimization in Part 5, but the preview is this: two targeted architectural changes addressing data transfer and storage duplication reduced SCCPS from $0.024 to $0.010 per 1K streams &#8212; a 60% reduction equaling $1.74M in annual savings.</p></blockquote><h2>What&#8217;s Next</h2><p>In Part 3, I&#8217;ll cover two frameworks that address the other half of the estimation challenge &#8212; modeling how costs grow over time through storage accumulation and traffic forecasting. If you&#8217;ve ever launched a service with a clean estimate that degraded over six months, that&#8217;s the part for you.</p><p><strong>Tags:</strong> #cloud #aws #costoptimization #engineering #finops #systemdesign</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Code to Financial Independence! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p><em>Nikhil Chandra is an engineering leader with over 11 years of experience building and operating high-scale e-commerce and digital streaming platforms at FAANG companies. Proven track record of building high-performing teams, architecting platforms generating $1B+ in business impact, and delivering innovations adopted industry-wide. Nikhil writes about intersection of software engineering, career growth, and long-term wealth creation at codetofire.com</em></p>]]></content:encoded></item><item><title><![CDATA[Chapter 1: Why Engineers Struggle To Estimate Cloud Costs (And the Mental Model That Fixes It)]]></title><description><![CDATA[Part 1 of 5: The Engineer&#8217;s Guide to Service Cost Estimation.]]></description><link>https://www.codetofire.com/p/chapter-1-why-engineers-struggle</link><guid isPermaLink="false">https://www.codetofire.com/p/chapter-1-why-engineers-struggle</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Tue, 17 Feb 2026 15:02:20 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!uYfO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!uYfO!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!uYfO!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!uYfO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2724706,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187363004?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!uYfO!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 424w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 848w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 1272w, https://substackcdn.com/image/fetch/$s_!uYfO!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7e1ccf34-97fa-480c-b297-7a35a03deef0_1536x1024.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>&#8220;How much will this cost to run?&#8221;</h2><p>It&#8217;s the question every engineer dreads and every finance partner asks. And most of the time, we guess. We look at similar services, add a buffer, and hope we&#8217;re in the ballpark.</p><p>Then the bill arrives, and we&#8217;re either 3x over budget or sitting on provisioned capacity we&#8217;re not using. Both are failures &#8212; one costs money directly, the other costs credibility.</p><p>Over the past eleven years, I&#8217;ve built and operated services where getting cost estimation wrong had real consequences &#8212; a content streaming platform serving 200+ countries where a single architecture decision moved the monthly bill by six figures, and e-commerce systems where the infrastructure cost was trivial but understanding the unit economics unlocked $900M+ in business value. Through that work, I&#8217;ve developed mental models for cost estimation that consistently land within 15&#8211;20% of actual spend.</p><p>This is Part 1 of a 5-part series where I&#8217;ll share the frameworks, walk through real production cost breakdowns, and show you where the money actually goes (spoiler: it&#8217;s rarely where you think).</p><div><hr></div><h2>The Two Fundamental Cost Drivers</h2><p>Before diving into frameworks, you need to understand the two fundamental ways cloud services charge you.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!YRoo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!YRoo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 424w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 848w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!YRoo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png" width="1456" height="1025" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1025,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:272677,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187363004?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!YRoo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 424w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 848w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 1272w, https://substackcdn.com/image/fetch/$s_!YRoo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0aee12e4-3abd-4329-91fa-b5433fcf2886_1520x1070.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>1. Storage-Driven Costs</h3><p>You pay for <strong>how much data you store</strong>, regardless of how often you access it. This includes S3 storage, database storage (RDS, DynamoDB), data warehouse storage, logs and metrics retention, and backup and snapshot storage.</p><p>Storage-driven costs grow with data volume. They&#8217;re generally linear. And critically, they accumulate over time unless you actively delete data.</p><p>The key question is: <em>&#8220;How much data will we store, and for how long?&#8221;</em></p><h3>2. Throughput-Driven Costs (TPS/Compute)</h3><p>You pay for <strong>how much work your service does</strong> &#8212; requests processed, compute consumed, data transferred. This covers API Gateway requests, Lambda invocations, EC2/container compute hours, database read/write operations, data transfer (egress), and message queue operations.</p><p>Throughput-driven costs grow with traffic. They can be spiky. And they reset each billing period.</p><p>The key question is: <em>&#8220;How many requests will we handle, and how much compute does each request need?&#8221;</em></p><blockquote><p>Understanding which cost component dominates your service is the first step to accurate estimation. Most engineers default to thinking about compute. Back in 2022 when I decomposed the monthly bill for a large-scale, multi-region content aggregation pipeline &#8212; one that pulled metadata from distributed databases across multiple regions, ran large-scale transformation jobs, and distributed structured feeds to downstream partners &#8212; cross-region data transfer accounted for 50% of the $400K monthly spend, while actual compute was only 16%. That mismatch between assumption and reality is exactly what a good mental model helps prevent.</p></blockquote><div><hr></div><h2>The Mental Model: Cost Per Unit</h2><p>The single most important mental model for cost estimation is <strong>Cost Per Unit (CPU)</strong> &#8212; and I don&#8217;t mean the processor.</p><p>Every service can be expressed as a cost per meaningful unit of work:</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/nvkXd/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7a89de54-b0a1-48ef-9443-ac5ab08fe849_1220x546.png&quot;,&quot;thumbnail_url_full&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b42144aa-16ca-4c20-99e8-625e78685d28_1220x616.png&quot;,&quot;height&quot;:318,&quot;title&quot;:&quot;Cost Per Unit Examples&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/nvkXd/1/" width="730" height="318" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>Once you have Cost Per Unit, estimation becomes multiplication:</p><pre><code><code>Monthly Cost = (Expected Units) &#215; (Cost Per Unit)</code></code></pre><p>The hard part isn&#8217;t the math. It&#8217;s accurately calculating Cost Per Unit for complex services and accurately forecasting Expected Units.</p><h3>Example: Applying Cost Per Unit to a Streaming Platform</h3><p>To make this concrete, consider a digital streaming platform. The <strong>compute unit</strong> can be thought of as a <em>title</em> (a movie, series, or episode) being processed or delivered. A <strong>stream</strong> is analogous to a customer watching that title, which drives throughput costs like CDN delivery and request processing. Meanwhile, <strong>storage costs</strong> come from storing video, audio, subtitles, and metadata assets required to make that content available globally. As the catalog grows, storage costs grow; as viewing traffic grows, throughput costs scale. Separating these two behaviors makes it much easier to predict and optimize total platform spend.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F5Uh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F5Uh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 424w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 848w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 1272w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F5Uh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png" width="1440" height="980" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:980,&quot;width&quot;:1440,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:220878,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187363004?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!F5Uh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 424w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 848w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 1272w, https://substackcdn.com/image/fetch/$s_!F5Uh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff29565f5-6e58-427d-8cac-d42f7b554dbc_1440x980.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h3>Why Per-Unit Thinking Changes Everything</h3><p>Looking at macro-level budgets tells you very little. If your annual bill went from $2M to $3.2M, is that a problem? <strong>It depends entirely on what the business did.</strong></p><p>This distinction became central to how a large-scale video processing and distribution platform approached cost accountability. We tracked two flavors of per-unit cost: one metric for fleets that scaled with catalog size, and another for fleets that scaled with viewing traffic. <strong>With millions of titles and tens of billions of streams, these metrics gave every team &#8212; from catalog ingestion to video encoding to partner delivery &#8212; a common language for cost conversations.</strong></p><p>The power of per-unit metrics showed up immediately. The overall platform budget was growing over 60% year-over-year. At the macro level, that&#8217;s alarming. But catalog size was growing only about 16%. Per-unit analysis revealed exactly where the gap originated: new services being onboarded, migration periods running parallel infrastructure, and architecture decisions that hadn&#8217;t yet been optimized for the new scale. Without per-unit decomposition, those conversations would have been vague assertions. With it, every team could point to specific cost drivers and concrete reasons.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_KeW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_KeW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 424w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 848w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 1272w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_KeW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png" width="1456" height="721" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:721,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:322914,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://www.codetofire.com/i/187363004?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_KeW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 424w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 848w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 1272w, https://substackcdn.com/image/fetch/$s_!_KeW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F623244ee-c4fb-45a0-ba6c-8a6ffab75386_1757x870.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I helped establish and operationalize this cost-per-unit framework across multiple teams working on catalog and content discovery systems. The methodology &#8212; decomposing spend by infrastructure component, mapping each cost to a business-meaningful unit, and tracking per-unit trends monthly &#8212; is something I now apply to every system I build. It forms the foundation for everything else in this series.</p><h2>What&#8217;s Coming in This Series</h2><p>Over the next four parts, I&#8217;ll walk through five battle-tested frameworks for cloud cost estimation:</p><p><strong>Part 2</strong> covers two estimation frameworks &#8212; Bottom-Up Component Costing for new services, and Analogous Service Benchmarking for features added to existing systems. I&#8217;ll show how both methods work with real numbers and where each one breaks down.</p><p><strong>Part 3</strong> tackles the two areas that catch most teams off guard: Storage Growth Modeling (why a single retention policy decision can be a 12x cost difference) and Traffic Forecasting tied to business drivers rather than guesswork.</p><p><strong>Part 4</strong> is the operational playbook &#8212; daily cost monitoring, Cost Per Unit trending, component breakdowns, and the most common estimation mistakes I&#8217;ve seen across dozens of services.</p><p><strong>Part 5</strong> brings it all together with three production case studies: a content streaming platform (Think Netflix / Prime Video) where two targeted optimizations saved $1.74M annually, a real-time e-commerce system that costs $86/month and drives $900M+ in business impact, and an ultra-fast delivery system where cost per delivery dropped 66% through density optimization.</p><p>Each part includes concrete numbers, actual cost breakdowns, and practical takeaways you can apply to your own systems.</p><p><strong>See you in Part 2.</strong></p><p><strong>Tags:</strong> #cloud #aws #costoptimization #engineering #finops #systemdesign</p><p><em>Nikhil Chandra is an engineering leader with over 11 years of experience building and operating high-scale e-commerce and digital streaming platforms at FAANG companies. Proven track record of building high-performing teams, architecting platforms generating $1B+ in business impact, and delivering innovations adopted industry-wide. Nikhil writes about intersection of software engineering, career growth, and long-term wealth creation at codetofire.com</em></p>]]></content:encoded></item><item><title><![CDATA[Your RSUs Are a Tax Time Bomb: Here's How to Defuse It]]></title><description><![CDATA[RSUs trigger taxable income at vesting, often creating unexpected liabilities. Proactive planning helps optimize withholding rates and minimize long-term exposure.]]></description><link>https://www.codetofire.com/p/your-rsus-are-a-tax-time-bomb-heres</link><guid isPermaLink="false">https://www.codetofire.com/p/your-rsus-are-a-tax-time-bomb-heres</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Sun, 02 Mar 2025 19:00:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!8IB1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8IB1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8IB1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8IB1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png" width="1456" height="833" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:833,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:409168,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8IB1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!8IB1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F51461185-ea9d-47bd-b0a0-f41e315b046b_1684x964.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>For many of you, tax season might bring a shocker, especially if you've recently joined a tech company and are receiving a large portion of your income from Restricted Stock Units (RSUs) or equity vesting. Trust me, I&#8217;ve been there myself! I still remember the first time I filed taxes after joining FAANG, only to be hit with a hefty, five-figure amount owed to the IRS. It was a huge wake-up call, and I don&#8217;t want you to go through the same stressful experience without knowing why it happens and how to avoid it in the future.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!o6NV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!o6NV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 424w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 848w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 1272w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!o6NV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png" width="925" height="339" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:339,&quot;width&quot;:925,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:40355,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!o6NV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 424w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 848w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 1272w, https://substackcdn.com/image/fetch/$s_!o6NV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F3341672d-90d8-456c-9a6d-83047fc3877f_925x339.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>Why Did This Happen?</strong></h2><ol><li><p>I had a significant portion of your W-2 income coming from RSU vestings.</p></li><li><p>I underestimated my and my spouse&#8217;s monthly income on the W-4 form, which necessitated an update to reflect both of our incomes.</p></li></ol><p>First and foremost, it&#8217;s important to note that all W2 income is essentially taxed the same, regardless of whether it originates from base, bonus, or equity vests. However, the withholding rates can vary. The base and bonus amounts are influenced by the information you provide in your W4 form. On the other hand, equity vests may receive a completely different treatment. When your RSUs vest (usually at the scheduled date or a milestone), they&#8217;re treated as ordinary income and taxed at your regular income tax rate. This means the IRS considers the value of the vested shares as part of your W2 income, potentially pushing you into a higher tax bracket. <strong>Many new employees underestimate the amount that will be deducted, especially since they&#8217;re accustomed to seeing their paycheck appear relatively smaller after tax, without factoring in the impact of equity vesting.</strong></p><p>Here&#8217;s what&#8217;s likely going on:</p><ul><li><p><strong>The RSU Vesting Process</strong>: As your RSUs vest, they get converted into actual shares of company stock. The value of those shares at the time of vesting gets added to your taxable income for the year. This is not just some little side income; this can be tens of thousands of dollars or more, depending on your equity compensation package.</p></li><li><p><strong>Withholding May Not Be Enough</strong>: Companies typically withhold a portion of the RSU vesting value for federal and state income taxes, but often, the withholding rate they use is much lower than your actual tax rate. For example, the withholding rate might be around 22% (which is the flat rate for supplemental income), but if your total taxable income puts you in a higher bracket, you could owe more.</p></li><li><p><strong>Unexpected Tax Bracket Surprises</strong>: If the RSU vesting pushes you into a higher tax bracket, you could end up owing more than you expect when you file your taxes. Suddenly, that larger-than-usual paycheck feels like it was a bit of a trap.</p></li></ul><h2><strong>How to Avoid This in the Future (or at least minimize It)</strong></h2><p>Now that you understand why you might be in for a surprise, let&#8217;s talk about how you can manage your taxes more effectively in the future.</p><h4><strong>Tax Planning with Your Equity Compensation</strong></h4><ul><li><p>Start by understanding how RSU vesting works and how it will impact your taxable income. Try to estimate how much tax you'll owe after your RSUs vest. You can use an <a href="https://turbotax.intuit.com/tax-tools/calculators/taxcaster/">online tax calculator</a>  to help estimate the the total taxes you will owe by including your RSU income. </p></li></ul><h4><strong>Increase Your Withholding on W2 Income</strong>:</h4><ul><li><p>You can adjust your tax withholding to account for the extra income that will come from RSU vesting. By doing this, you can have more withheld from your regular salary to avoid a large bill come tax time. You can use an <a href="https://www.irs.gov/individuals/tax-withholding-estimator">online tax calculator</a> or consult with a tax professional to help you anticipate this.</p></li></ul><h4><strong>Max Out Tax-Advantaged Accounts</strong>:</h4><ul><li><p>Take full advantage of tax-advantaged accounts like your 401(k) and HSA. These accounts can help reduce your taxable income and lower your tax bill, particularly in high-income years. You might want to consider contributing as much as possible to these accounts to offset the impact of the RSUs on your taxable income. I have covered in depth on how to maximize this in <a href="https://codetofire.substack.com/p/fire-chapter-4-optimizing-tax-advantage">post</a> before.</p></li></ul><h4><strong>Consider Quarterly Estimated Tax Payments</strong>:</h4><ul><li><p>If your RSUs vest in large amounts, it may be a good idea to pay quarterly estimated tax payments to the IRS. This way, you won&#8217;t have to worry about the surprise bill when you file taxes. These payments can help smooth out the tax burden and keep you from facing penalties for underpayment.</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.codetofire.com/subscribe?"><span>Subscribe now</span></a></p><h2>Example</h2><p>Let&#8217;s go through a real world example. <strong>Sameer earns $380,000 (including $180,000 in RSUs) along with his spouse who earns $100,000. The couple were hit with whopping $35,000 additional tax bill from IRS in 2023.</strong> We will understand how they can adjust their withholding to avoid another large IRS surprise in the following year. Here&#8217;s the breakdown of their salary data and tax situation.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/4x8Rd/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9021b77-17cb-44cc-a4c6-fb22680b9132_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:248,&quot;title&quot;:&quot;Income Breakdown for 2023&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/4x8Rd/1/" width="730" height="248" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/pXUkK/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9c58f87d-757a-4965-8cf0-248e18b604b5_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:229,&quot;title&quot;:&quot;Actual Taxes Owed in 2023&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/pXUkK/1/" width="730" height="229" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/i4HGx/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2bb6a5e3-0b40-41f0-bab8-d244a712ae13_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:248,&quot;title&quot;:&quot;Taxes Paid in 2023&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/i4HGx/1/" width="730" height="248" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h3><strong>Why Did They Owe Extra Taxes?</strong></h3><ol><li><p><strong>RSU Withholding Was Too Low:</strong> In 2023, Sameer had $180,000 in RSUs vesting. The RSUs were subject to withholding at the <strong>22% flat rate</strong>, but given their <strong>total income</strong>, they were actually in the <strong>32% federal tax bracket. </strong>RSUs are automatically withheld at <strong>22%</strong>, but for high earners, their actual marginal tax rate can be <strong>32-35%</strong>, leading to a shortfall.</p></li><li><p><strong>Under-Estimated W-4 Withholding:</strong> Spouse salary withholding was not enough to cover the full tax liability of the household.</p></li></ol><h3><strong>Actions Taken to Avoid the IRS Surprise in 2024</strong></h3><p>To ensure they don't owe a large sum next tax season, the couple made <strong>proactive adjustments to their withholding</strong>:</p><ol><li><p><strong>Increased RSU Withholding to 32%:</strong></p><ul><li><p>Instead of relying on the default 22% withholding, <strong>Spouse 1 manually set aside an additional 10% of RSU income</strong> for taxes.</p></li></ul></li><li><p><strong>Updated W-4 Withholding for Both Spouses:</strong></p><ul><li><p><strong>Sameer added an additional $18,000 in withholding</strong> from their base salary. <strong>($1500/month)</strong></p></li><li><p><strong>Spouse increased their paycheck withholding by $6,000 ($500/month)</strong></p></li></ul></li><li><p><strong>Maxed Out Pre-Tax Contributions Again:</strong></p><ul><li><p>Continued to <strong>max out 401(k) contributions ($23,000 each)</strong> and <strong>HSA contributions ($7,750 total)</strong> to lower taxable income.</p></li></ul></li></ol><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/V4iaH/3/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/01e461d1-79a0-451a-9bad-bf04e17860c1_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:392,&quot;title&quot;:&quot;2024 Projected Income and Tax Withholding Adjustments&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/V4iaH/3/" width="730" height="392" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2><strong>Conclusion &amp; Key Takeaways:</strong></h2><ul><li><p>&#9989; <strong>RSU Tax Withholding</strong>: RSUs are taxed as regular income, so it&#8217;s crucial to adjust your withholding rate accordingly. In this case, Sameer&#8217;s RSUs should have been withheld at the 32% rate instead of the standard 22%.</p></li></ul><ul><li><p>&#9989; <strong>Update W-4 for Both Spouses</strong>: Ensure that both spouses update their W-4 forms to request additional withholding if needed, to cover any gaps in withholding for income from RSUs or other sources.</p></li><li><p>&#9989; <strong>Use Pre-Tax Accounts</strong>: Maximizing <strong>401(k) and HSA contributions</strong> helped reduce taxable income.</p></li><li><p>&#9989; <strong>Plan for the Future</strong>: If you receive RSUs or other forms of equity compensation, make it a habit to plan ahead for taxes and adjust your withholding as needed. This will help avoid unpleasant surprises and give you a clearer picture of your tax obligations throughout the year.</p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p>]]></content:encoded></item><item><title><![CDATA[Beyond RSUs: Smart Strategies for a Diversified Portfolio]]></title><description><![CDATA[Diversification is key to protecting your financial future. Here are some strategies to reduce reliance on your company stock while maintaining a strong investment portfolio.]]></description><link>https://www.codetofire.com/p/diversifying-investment-portfolio</link><guid isPermaLink="false">https://www.codetofire.com/p/diversifying-investment-portfolio</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Sun, 23 Feb 2025 16:01:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!vdUi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vdUi!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vdUi!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vdUi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png" width="1456" height="833" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:833,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:369341,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vdUi!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!vdUi!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fa05f77e8-a307-45ca-8dc5-085ccdeeaf18_1684x964.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>If you work at a FAANG+ company, chances are a significant portion of your compensation comes in the form of company stock&#8212;whether through RSUs, ESPPs, or stock options. While this can be a great way to build wealth, being too concentrated in one stock carries risks. By following this structured plan, you can reduce risk, optimize growth, and ensure financial independence beyond single stock. &#128640;</p><h2>Single Stock Concentration</h2><p>Many folks keep their vested RSUs because they don&#8217;t have a plan to get rid of them or think their company is the best. Often this comes to phycological factor where people often hold RSUs due to emotional attachment or overconfidence in their company which can be risky. </p><p>Over the past year, major tech companies have reached their highest market values. Below is a table that aids us in comparing the 10-year performance of FAANG MULA stocks against some well-known index funds.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/vPuWV/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a683e5cf-6af2-46da-8bc5-d459a0c8a951_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:384,&quot;title&quot;:&quot;10-Year Total Returns Comparison&quot;,&quot;description&quot;:&quot;10-year performance (2015-2024) for major tech ETFs and FAANG stocks:&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/vPuWV/1/" width="730" height="384" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p><strong>What does the above table tell us?</strong> Over the last 10 years, big tech stocks like Netflix (+32%) and Amazon (+29%) grew way more than funds like VGT (tech ETF, +21%) or the S&amp;P 500 (+13%). But these stocks also crashed harder&#8212;like losing 50% in bad years (2022)&#8212;while ETFs dropped less. The tech ETF (VGT) was a safer middle ground, growing almost as much as top stocks but with smaller swings. Global funds (VT) lagged behind because they include slower-growing non-U.S. companies. <strong>The lesson: s</strong>ingle stocks can skyrocket but are risky rollercoasters, while ETFs let you ride tech growth without betting everything on one company. If you hate big risks, stick with ETFs or mix them with a few stocks.</p><blockquote><p><strong>Lessons Learnt:</strong> Early in my career, I kept my RSUs vested in the same company. This resulted in a situation where over 75% of my entire portfolio was concentrated in a single stock. However, over the past four years, I have consistently sold my RSUs whenever they vest and have actively diversified my existing concentration to minimize the risk. As a result, I am currently at a 35% concentration level and plan to reduce it to 15% by the end of 2025.</p></blockquote><h2>How are RSUs taxed?</h2><p>RSUs are taxed as ordinary income upon vesting, holding them doesn&#8217;t offer tax advantages. Unlike stock purchased with cash, <strong>RSUs are taxed as income at vesting</strong>, meaning:</p><ul><li><p>You <strong>already paid income tax (30% for most of HENRY&#8217;s)</strong> on the stock&#8217;s value when it vested.</p></li><li><p>Any <strong>growth after vesting</strong> is subject to <strong>capital gains tax</strong> when you sell:</p><ul><li><p><strong>Short-term capital gains (if sold within 1 year)</strong> = taxed at <strong>your income tax rate (30%)</strong>.</p></li></ul></li></ul><h2><strong>How Much RSUs Should You Keep?</strong></h2><p>Holding too much company stock creates significant concentration risk, especially when your salary and benefits already depend on the same company. The recommended maximum concentration in a single company stock should be between 5-10% of your total investment portfolio. </p><p>&#128313; <strong>Keep no more than 5-10% of your total net worth in a single stock.</strong></p><p>&#128313;  If your vested RSUs exceed this limit, prioritize selling and reallocating into diversified assets.</p><p>&#128204; <strong>Example:</strong> If your total portfolio is <strong>$500K</strong>, limit single stock holdings to <strong>$25K-$50K max</strong>.</p><h2>When to sell and diversify?</h2><p>Here&#8217;s a structured approach using <strong>Dollar-Cost Averaging (DCA) vs. Lump Sum Selling</strong>, guidance on optimal company stock concentration, and alternative ETFs for diversification.</p><h4><strong>Lump Sum Selling</strong></h4><p>Selling all RSUs immediately upon vesting and reinvesting in a diversified portfolio has historically yielded higher returns. Why?</p><ul><li><p><strong>Time in the Market &gt; Timing the Market:</strong> Investing immediately allows your money to compound sooner.</p></li><li><p><strong>Reduces Single-Stock Risk Quickly:</strong> Amazon stock can be volatile. Holding too much exposes you to unnecessary risks.</p></li></ul><p>&#128204; <strong>Best for:</strong> Employees who want to fully mitigate stock exposure and reinvest into a diversified portfolio quickly.</p><h4><strong>Dollar-Cost Averaging (DCA)</strong></h4><p>DCA involves selling RSUs gradually over time (e.g., over 6-12 months) rather than all at once. Benefits include:</p><ul><li><p><strong>Reduces Short-Term Volatility Risk:</strong> Avoids selling all shares at a low point in companies stock cycle.</p></li><li><p><strong>Psychological Comfort:</strong> More manageable for employees hesitant about selling large stock amounts at once.</p></li><li><p><strong>Smooths Out Market Entry Timing:</strong> If reinvesting into ETFs, DCA ensures you don&#8217;t buy into market peaks.</p></li></ul><p>&#128204; <strong>Best for:</strong> Employees who prefer a gradual approach or believe company stock will appreciate in the short term.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-6iC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-6iC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 424w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 848w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 1272w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-6iC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png" width="1091" height="518" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:518,&quot;width&quot;:1091,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:63722,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-6iC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 424w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 848w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 1272w, https://substackcdn.com/image/fetch/$s_!-6iC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F507a33c4-dac8-4d4d-8e08-3217ed0a93b5_1091x518.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>DCA vs. Lump Sum: Which is Better?</strong></h2><p><strong>Lump Sum &gt; Dollar-Cost Averaging (DCA)</strong></p><ul><li><p><strong>Historical Edge</strong>: Lump sum <a href="https://www.sarwa.co/blog/dollar-cost-averaging-vs-lump-sum">outperforms</a> DCA ~67% of the time, as markets rise 75% of the time.</p></li><li><p><strong>Exception</strong>: Use DCA only if psychological comfort outweighs statistical advantage (e.g., during extreme market uncertainty)</p></li></ul><h4>&#9989; <strong>Recommendation:</strong> Best of both the words. Follow a <strong>hybrid approach</strong>:</h4><ul><li><p>Sell <strong>50% immediately</strong> upon vesting (lump sum) to reduce concentration risk.</p></li><li><p>Sell the remaining <strong>50% using a DCA strategy</strong> (e.g., selling some % per month).</p></li></ul><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.codetofire.com/subscribe?"><span>Subscribe now</span></a></p><h2>Where to Reinvest?</h2><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/U9GWn/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a87efaed-2dd3-45ef-9430-c3f05bdb5997_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:209,&quot;title&quot;:&quot;[ Insert title here ]&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/U9GWn/1/" width="730" height="209" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h4><strong>Choosing Between VGT, VOO, and VT</strong></h4><ul><li><p>If you want <strong>pure tech exposure</strong>, invest in <strong>VGT</strong> (but it's highly volatile).</p></li><li><p>If you want <strong>broad U.S. market exposure</strong>, invest in <strong>VOO</strong> (covers all sectors, including tech).</p></li><li><p>If you want <strong>global diversification</strong>, invest in <strong>VT</strong> (includes both U.S. and international stocks).</p></li></ul><p>Since <strong>VOO already holds ~28% in tech stocks</strong>, investing in both VGT and VOO can cause <strong>redundancy</strong>. To balance exposure:</p><h4><strong>Recommended Allocation for a Tech-Heavy, Yet Diversified Portfolio:</strong></h4><p>&#9989; <strong>50% VOO</strong> &#8594; Broad U.S. market with a tech tilt (~28% of VOO is tech).<br>&#9989; <strong>30% VGT</strong> &#8594; Extra tech exposure without over concentration.<br>&#9989; <strong>20% VXUS </strong>&#8594; International diversification.</p><h4><strong>Recommended Allocation for US Heavy Investment Portfolio</strong></h4><p>&#9989; <strong>50% VTI</strong> &#8594; Total US Market Exposure.<br>&#9989; <strong>30% VOO</strong> &#8594; S&amp;P 500 Large-Cap Focus<br>&#9989; <strong>20% VXUS </strong>&#8594; International diversification.</p><h4><strong>Recommended Allocation for Global Investment Portfolio</strong></h4><p>&#9989; <strong>100% VT</strong> &#8594; broad range of global stocks, investing in both U.S. and international markets (developed and emerging).</p><h2><strong>RSU Diversification Strategy Example</strong></h2><p>In this example we&#8217;ll use a <strong>Hybrid Approach (50% Lump Sum, 50% DCA over 6 months)</strong> for diversification. We will continue with our previous example of  Sameer who get $150K annually in RSUs which amounts to a $37.5K/Quarter. Here is a plan to diversify.</p><blockquote><p><strong>Note for Amazon Employee: <a href="https://avieradvisors.com/amazon-25-rsu-cash-option/#:~:text=If%20you%20decide%20to%20receive,your%20planned%20RSUs%20for%202025.">Amazon&#8217;s 2025 Cash Option</a></strong>: Starting 2025, eligible employees (L4&#8211;L8) can convert 25% of 2025&#8211;2026 RSUs to cash at a preset price. This reduces equity exposure upfront while retaining 75% as stock.</p></blockquote><p>Now back to our example. </p><h3><strong>Implementation Plan for Sameer</strong></h3><h4><strong>Immediate Action for New Vests</strong></h4><ul><li><p>Set up automatic sell orders for RSUs upon vesting</p></li><li><p>Immediately reinvest proceeds into your diversified ETF portfolio</p></li><li><p>Maintain Amazon position at maximum 10% of total portfolio.</p></li></ul><p><strong>Each Quarter (March, June, September, December)</strong></p><ul><li><p><strong>Sell 50% Immediately ($18,750)</strong> &#8594; Reduce Amazon stock concentration &amp; reinvests into diversified assets. </p></li><li><p><strong>Sell 50% Gradually Over 3 Months ($6,250/month)</strong> &#8594; Reduces short-term price fluctuation risk.</p></li></ul><p>&#128161; <strong>Alternative Option:</strong> If you&#8217;re comfortable with higher risk, you could sell <strong>100% at vesting</strong> and reinvest as a lump sum for historically higher returns.</p><h4><strong>Existing RSU Holdings</strong></h4><ul><li><p>If current Amazon position exceeds 10%, create a systematic reduction plan</p></li><li><p>Sell portions quarterly until reaching target allocation</p></li><li><p>Consider tax implications and use <a href="https://evergreengavekal.com/blog/how-to-get-more-out-of-your-amazon-executive-compensation/">tax-loss harvesting</a> when possible</p></li></ul><h4><strong>Ongoing Management</strong></h4><ul><li><p>Review portfolio allocation quarterly</p></li><li><p>Rebalance when asset classes drift more than 5% from targets</p></li><li><p>Adjust strategy during annual compensation reviews when receiving new RSU grants</p></li></ul><h2><strong>Final Takeaways</strong></h2><ul><li><p><strong>Sell RSUs Strategically</strong> &#8211; Use a hybrid <strong>50% lump sum / 50% DCA over 6 months</strong> approach.</p></li><li><p><strong>Keep Stock Exposure in Check</strong> &#8211; Hold no more than <strong>5-10% of net worth</strong> in a single stock.</p></li><li><p><strong>Reinvest Wisely</strong> &#8211; Allocate RSU proceeds into broad market ETFs, bonds, and alternative investments for long-term diversification.</p></li><li><p><strong>Annual Reassessment</strong> &#8211; Reevaluate your RSU stock exposure <strong>every time</strong> when RSUs vest.</p></li></ul><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p><p></p>]]></content:encoded></item><item><title><![CDATA[Set It and Get Rich: Your 2025 Playbook for Automated Wealth Building]]></title><description><![CDATA[Learn how to seamlessly automate your paycheck this step-by-step guide using Chase, Fidelity/Vanguard, and HYSA accounts.]]></description><link>https://www.codetofire.com/p/automating-your-investments</link><guid isPermaLink="false">https://www.codetofire.com/p/automating-your-investments</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Sun, 16 Feb 2025 20:55:02 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZB3O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZB3O!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZB3O!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZB3O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png" width="1456" height="833" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:833,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:137172,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZB3O!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 424w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 848w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 1272w, https://substackcdn.com/image/fetch/$s_!ZB3O!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F467c1784-12f8-4448-ac7f-f1066fbc3cbe_1684x964.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Automating your paycheck investing is one of the smartest ways to build wealth effortlessly. By setting up a system that automatically directs portions of your monthly paycheck to different accounts for investing, saving, and expenses, you eliminate the need for constant decision-making while ensuring your financial goals stay on track. </p><p>In this post we explore a step-by-step guide to doing this using Chase for Checking Accounts, Fidelity or Vanguard for investments, and Ally for savings.(You can use any bank you work with. I listed the above banks because I personally use them for my portfolio.)</p><p>We will also continue with our example of Sameer who earns $350,000 as his annual salary and has monthly expenses amounting to $120,000 annually. </p><div><hr></div><h3><strong>Step 1: Understand Your Budget</strong></h3><p>Before automating your finances, map out your income and expenses. Divide your paycheck into three primary categories:</p><ol><li><p><strong>Investments:</strong> How much will go towards building your future wealth?</p></li><li><p><strong>Savings:</strong> How much will you set aside for emergencies and short-term goals?</p></li><li><p><strong>Expenses:</strong> How much do you need for monthly living expenses?</p></li></ol><p>We will continue  with our previous example of Sameer from our previous <a href="https://codetofire.substack.com/publish/post/155664171">post</a>. </p><blockquote><ul><li><p><strong>Expenses: </strong>Sameer monthly expense comes out to be $10,000. </p></li><li><p><strong>Investments</strong></p><ul><li><p>Sameer invests $5,813 into 401K and Roth accounts. </p></li><li><p>Sameer invests the $5,000 into into a low fee index fund. </p></li></ul></li><li><p><strong>Savings: </strong>The remaining $230 money. </p></li></ul></blockquote><div><hr></div><h3><strong>Step 2: Set Up Your Accounts</strong></h3><ul><li><p><strong>Chase Checking:</strong> This is your primary account for which will be used for managing everyday expenses.</p></li><li><p><strong>Fidelity/Vanguard:</strong> Use these for your investment accounts, such as brokerage, IRA, or 401(k) rollovers.</p></li><li><p><strong><a href="https://www.ally.com/referral?code=3K2Q8S5S6Z">Ally Savings</a>:</strong> Ideal for your emergency fund or short-term savings goals due to its high-interest rates. Additionally, any amount not allocated to investments or checking accounts can be deposited here.</p></li></ul><div><hr></div><h3><strong>Step 3: Automate Your Direct Deposits</strong></h3><p>Most employers allow you to split your direct deposit into multiple accounts. For Amazon employees, ADP allows you to direct paychecks to multiple accounts. If your employer offers this feature:</p><ol><li><p>Allocate a portion of your paycheck directly to your investment account at Fidelity or Vanguard. <strong>Schedule an automatic transfer from ADP to Fidelity.</strong></p></li><li><p>Send another portion to your Ally Savings account for your emergency fund or specific savings goals. <strong>Schedule an automatic transfer from ADP to <a href="https://www.ally.com/referral?code=3K2Q8S5S6Z">Ally</a>.</strong></p></li><li><p>The remainder of your paycheck can be deposited into your Chase Checking account for day-to-day expenses. <strong>Schedule an automatic transfer from ADP to Chase.</strong></p></li></ol><p>If your employer doesn&#8217;t allow splitting deposits, you can manage this through automated transfers first into a checking account and then scheduling automatic transfer from checking to the above accounts.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!G4DW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!G4DW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!G4DW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png" width="1024" height="768" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:768,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!G4DW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 424w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 848w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 1272w, https://substackcdn.com/image/fetch/$s_!G4DW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc818a22f-a35f-4821-a09e-bce6d102ab65_1024x768.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h3><strong>Step 4: Set Up Investment Contributions</strong></h3><p>Now that you have your paycheck contribution into Fidelity/Vanguard its time to setup an recurring investment that will invest this money into an index fund.</p><p><strong>Automate Contributions on Fidelity/Vanguard:</strong></p><ul><li><p>Log into your account and set up recurring contributions from your Chase Checking account.</p></li><li><p>Decide the amount and frequency.</p></li><li><p>Choose your investment funds (index funds like Vanguard&#8217;s VFIAX or Fidelity&#8217;s FXAIX are great low-cost options).</p></li></ul><p>Below is a screenshot on how to automate on <a href="https://www.fidelity.com/learning-center/personal-finance/automate-savings">Fidelit</a>y and Vanguard.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!S2OD!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!S2OD!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 424w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 848w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 1272w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!S2OD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png" width="2378" height="696" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/042f4ba8-70a2-48c6-a45e-0568c4397b3d_2378x696.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:696,&quot;width&quot;:2378,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:135127,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!S2OD!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 424w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 848w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 1272w, https://substackcdn.com/image/fetch/$s_!S2OD!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F82c27c5b-1563-4ca3-9df2-fe1839461b68_2378x696.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!8zIz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!8zIz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 424w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 848w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!8zIz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png" width="2036" height="1152" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5e0ef45c-5205-4af0-b7f0-284123c33ade_2036x1152.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1152,&quot;width&quot;:2036,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:197120,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!8zIz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 424w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 848w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 1272w, https://substackcdn.com/image/fetch/$s_!8zIz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7527547c-b4f8-495e-84e2-b07e02e34d30_2036x1152.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Recurring Investments in Fidelity</figcaption></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!6Kjb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!6Kjb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 424w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 848w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!6Kjb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png" width="2648" height="1088" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0672acd0-e565-4120-9793-289cde307c55_2648x1088.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1088,&quot;width&quot;:2648,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:244637,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!6Kjb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 424w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 848w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 1272w, https://substackcdn.com/image/fetch/$s_!6Kjb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F91fb4d3a-9d8f-4961-9916-fa01f419f838_2648x1088.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!EjrC!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!EjrC!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 424w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 848w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 1272w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!EjrC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png" width="1810" height="1196" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/fb169ae5-37ce-423e-8101-634a4b202fc7_1810x1196.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1196,&quot;width&quot;:1810,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:149959,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!EjrC!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 424w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 848w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 1272w, https://substackcdn.com/image/fetch/$s_!EjrC!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8a2bfbcd-5323-4d43-a19c-fdcb47ac086c_1810x1196.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Recurring Investments in Vanguard</figcaption></figure></div><div><hr></div><h3><strong>Step 5: Monitor and Adjust</strong></h3><p>Review your system every 3-6 months to ensure it aligns with your financial goals:</p><ul><li><p><strong>Savings Rate:</strong> Are you saving enough in your <a href="https://ally.com/referral?code=3K2Q8S5S6Z">Ally</a> account for emergencies and short-term goals?</p></li><li><p><strong>Investment Growth:</strong> Check your Fidelity/Vanguard account to ensure your contributions are on track to meet your retirement or investment goals.</p></li><li><p><strong>Budgeting:</strong> Use Tools like Fidelity Full View,  Chase&#8217;s built-in budgeting feature or third-party apps (e.g., Monarch, Quicken Simplifi) can help you.</p></li></ul><div><hr></div><h3><strong>The Power of Automation</strong></h3><p>By setting up automatic paycheck investing, you:</p><ul><li><p>Eliminate the temptation to spend before saving.</p></li><li><p>Consistently build wealth through regular investments.</p></li><li><p>Achieve peace of mind knowing your financial goals are on autopilot.</p></li></ul><p>Take the first step today and watch your wealth grow with minimal effort!</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions. Commissions may be earned from the links above at no extra cost to you. By using these links, you help support the channel. Thank you for your support.</p><div class="poll-embed" data-attrs="{&quot;id&quot;:274067}" data-component-name="PollToDOM"></div>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 6 - It All Adds Up!]]></title><description><![CDATA[In this post, we&#8217;ll explore how to determine if we can actually retire based on our current expenses, savings, and net worth. Additionally, we&#8217;ll discuss potential strategies to expedite this.]]></description><link>https://www.codetofire.com/p/fire-chapter-6-it-all-adds-up</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-6-it-all-adds-up</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Sun, 09 Feb 2025 19:00:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Tln-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Tln-!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Tln-!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Tln-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1943933,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Tln-!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!Tln-!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbfaf481c-0215-4482-9c96-f4fee5228fb5_1080x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Story So Far</h2><blockquote><ul><li><p>Sameer would need a corpus of $4M to $5M to become financial independent. </p></li><li><p>Sameer&#8217;s total annual compensation is <strong>$350,000</strong>, which includes a base salary of <strong>$200,000 and RSUs of $150,000</strong>.</p></li><li><p>Over the last 8 years Sameer has accumulated net-worth of $1,000,000.</p></li><li><p>Sameer maximizes his 401(k) and Health Savings Account contributions from his pre-tax income, thereby reducing his overall taxable income.</p></li><li><p>Sameer saves <strong>$8,500</strong> per month after taxes. He prioritizes investing <strong>$3,292 per month by using Mega Backdoor Roth and </strong>the remaining<strong> $5,290 per month</strong> into an index fund. </p></li><li><p>Sameer&#8217;s annual expenses total <strong>$120,000, equating to $10,000 per month</strong>.</p></li><li><p>Across both tax-advantage and taxable accounts Sameer saves <strong>$137,230 annually.</strong></p></li><li><p><strong>Post retirement Sameer would require additional $25,000 per year for health insurance and one time expense for $200,000 for his kids college.  </strong></p></li></ul></blockquote><h2>Portfolio Growth</h2><p>We will now evaluate how much time Sameer would need to build a corpus corpus of $4M to $5M. We will assume Sameer continues in his current role and salary increase at 5% annually. We will also increase the expenses from $120,000 to $145,000 to account for health insurance. We use this <a href="https://engaging-data.com/fire-calculator/">tool</a> that helps us calculate the age where Sameer will be able to build a corpus 33x his annual expense. It is a <strong>pre-retirement</strong> calculator that is useful before you retire to get a sense of how many years it is likely to take to <em><strong>accumulate enough money to retire</strong></em>. It will simulates thousands of possible sets of paths to meet your target and calculates the probability of different trajectories for your retirement investments. As we see from the image below, in order to build a 33x corpus Sameer would need to work for additional 12 years.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hIAw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hIAw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 424w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 848w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hIAw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png" width="728" height="434" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c5014146-056e-432e-821b-207452bfbb0a_2292x1366.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:868,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:367391,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hIAw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 424w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 848w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 1272w, https://substackcdn.com/image/fetch/$s_!hIAw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc5014146-056e-432e-821b-207452bfbb0a_2292x1366.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Reaching the FI/RE Goal Faster</h2><p>The only way to reduce number of years to retire is to save more money. One way to increase our overall savings is to build other income sources. Since Sameer is already quite good at saving, the only realistic option would be for the spouse to also take up a job, allowing both of them to potentially earn. Let&#8217;s assume his spouse takes up a job or is able to generate income through a business to the extent of $100,000. This would increase their total annual salary to $450,000. Assuming a 30% tax rate, we would have an additional $70,000 being saved each month. Let&#8217;s see where this leads us.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!q_9M!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!q_9M!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 424w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 848w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 1272w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!q_9M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png" width="1456" height="878" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:878,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:374614,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!q_9M!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 424w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 848w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 1272w, https://substackcdn.com/image/fetch/$s_!q_9M!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe5a89880-7fed-4011-9f46-ed943e571ba0_2294x1384.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Hey, guess what?</strong> Sameer and his family are on their way to financial independence in the next 9 years (instead of 12)! This means that by building additional income streams, they can boost their earnings and even retire early. And here&#8217;s the cherry on top: we also ran the numbers and found that their retirement corpus of $4.5 million is expected to last for a whopping 55 years! Isn&#8217;t that amazing?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!_zmw!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!_zmw!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 424w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 848w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 1272w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!_zmw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png" width="1456" height="1245" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/bb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1245,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:271360,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!_zmw!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 424w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 848w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 1272w, https://substackcdn.com/image/fetch/$s_!_zmw!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fbb7189f0-e541-4d48-9ecd-7867e8c8103d_1602x1370.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p><strong>Check out this awesome statistic!</strong> With Sameer retiring, there&#8217;s a whopping 99.7% chance that this balance won&#8217;t run out for the next 55 years. That&#8217;s a 0.3% chance of going broke, which is pretty darn low!</p><h2>Key Takeaways</h2><ul><li><p><strong>Financial Goal:</strong> Sameer aims to achieve financial independence with a corpus of $4M to $5M.</p></li><li><p><strong>Current Financial Situation:</strong> Sameer has a total annual compensation of $350,000, a net worth of $1,000,000, and saves $8,500 per month after taxes.</p></li><li><p><strong>Post-Retirement Additional Expenses:</strong> Sameer anticipates an additional $25,000 annually for health insurance and a one-time expense of $200,000 for his children&#8217;s college.</p></li></ul><ul><li><p><strong>Retirement Corpus Goal:</strong> Sameer aims to build a corpus of $5 million (33 times his annual expenses for retirement).</p></li><li><p><strong>Estimated Time to Retirement:</strong> With Sameer&#8217;s current salary and expense projections, it would take 12 years to reach the retirement corpus goal.</p></li><li><p><strong>Impact of Additional Income:</strong> If Sameer&#8217;s spouse generates an additional $100,000 annually, they could achieve financial independence in 9 years and have a retirement corpus lasting 55 years.</p></li></ul><p><strong>Note</strong></p><ul><li><p>These calculations doesn&#8217;t include Social Security. I&#8217;m pretty sure it&#8217;ll still be around when I reach full retirement age. It doesn&#8217;t include Medicare, which should help lower healthcare costs once we turn 65. Hence the above numbers can be considered conservative.</p></li></ul><div class="poll-embed" data-attrs="{&quot;id&quot;:267214}" data-component-name="PollToDOM"></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 5 - Optimizing Taxable Investments]]></title><description><![CDATA[Hey, what&#8217;s Mega Backdoor Roth? Which Index Funds should I pick? In this post, we&#8217;ll dive into all the investment options for a taxable account.]]></description><link>https://www.codetofire.com/p/fire-chapter-5-optimizing-taxable</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-5-optimizing-taxable</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 03 Feb 2025 16:01:52 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!9R1p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!9R1p!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!9R1p!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 424w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 848w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 1272w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!9R1p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png" width="1280" height="1064" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c3f39854-88cb-454f-a876-1469c4217d6c_1280x1064.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1064,&quot;width&quot;:1280,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:105581,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!9R1p!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 424w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 848w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 1272w, https://substackcdn.com/image/fetch/$s_!9R1p!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F641d573b-1957-41c6-aef2-178b63f8b934_1280x1064.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Having explored tax-advantaged investment options in previous <a href="https://codetofire.substack.com/p/fire-chapter-4-optimizing-tax-advantage">posts</a>, this post delves into the practical application of taxable investment options in conjunction with after-tax funds.</p><h2>Story So Far</h2><ul><li><p>Sameer&#8217;s total annual compensation is $350,000, which includes a base salary of $200,000 and RSUs of $150,000.</p></li><li><p>Sameer&#8217;s annual expenses total $120,000, equating to $10,000 per month.</p></li><li><p>Sameer maximizes his 401(k) and Health Savings Account contributions from his pre-tax income, thereby reducing his overall taxable income.</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!xFiK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!xFiK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 424w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 848w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 1272w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!xFiK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png" width="1575" height="1127" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8756299f-8ab4-493a-b5ba-5cf87d456dfa_1612x1264.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1127,&quot;width&quot;:1575,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:313621,&quot;alt&quot;:&quot;&quot;,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" title="" srcset="https://substackcdn.com/image/fetch/$s_!xFiK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 424w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 848w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 1272w, https://substackcdn.com/image/fetch/$s_!xFiK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8b1a33fe-4a2e-4968-86ad-a0cc4c5f8705_1575x1127.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2>Monthly After Tax Savings</h2><p>Let us analyze Sameer&#8217;s take-home pay after incurring monthly expenses of $10,000. For the sake of simplicity, I have distributed $150,000 RSU evenly over the course of 12 months.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/pLJkm/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2121e208-913e-465a-8cac-e313f1999343_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:431,&quot;title&quot;:&quot;Monthly Savings (Base Salary + RSUs)&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/pLJkm/1/" width="730" height="431" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><blockquote><blockquote><p>Sameer saves $8,500 per month after taxes. Now we will look into where can Sameer invest this money. </p></blockquote></blockquote><h2><strong>Mega Backdoor Roth IRA</strong></h2><p>The <strong>Mega Backdoor Roth IRA</strong> option offered by Amazon is a way for employees to save even more money for retirement in a smart, tax-efficient way. Amazon&#8217;s 401(k) plan<a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-1" href="#footnote-1" target="_self">1</a> has a special feature that allows employees to contribute more money into their retirement account after reaching the regular 401(k) contribution limit. This extra money is called <strong>after-tax contributions</strong> (not the same as Roth contributions). You can then move this extra money into a <strong>Roth IRA</strong> or <strong>Roth 401(k)</strong>, where it can grow <strong>tax-free forever</strong>. Unlike a regular Roth IRA, there&#8217;s no income cap for using the Mega Backdoor Roth.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I28R!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I28R!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 424w, https://substackcdn.com/image/fetch/$s_!I28R!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 848w, https://substackcdn.com/image/fetch/$s_!I28R!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 1272w, https://substackcdn.com/image/fetch/$s_!I28R!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I28R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png" width="350" height="422.3463687150838" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/dcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:864,&quot;width&quot;:716,&quot;resizeWidth&quot;:350,&quot;bytes&quot;:104030,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I28R!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 424w, https://substackcdn.com/image/fetch/$s_!I28R!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 848w, https://substackcdn.com/image/fetch/$s_!I28R!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 1272w, https://substackcdn.com/image/fetch/$s_!I28R!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdcec5f89-83f1-40b9-846e-6469fcc065c7_716x864.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fidelity NetBenefits Mega Backdoor Roth Conversion Settings</figcaption></figure></div><div><hr></div><h3><strong>How Sameer Leverages Mega Backdoor Roth at Amazon</strong></h3><ol><li><p>As an Amazon employee, Sameer contributes  <strong>$22,500</strong> per year (in 2024) to your 401(k) as pre-tax.</p></li><li><p>Amazon matches <strong>50% of your contributions up to 4% of your salary</strong> which is $4,000).</p></li><li><p>Together, your contributions and Amazon's match add up to $26,500&#8212;but there&#8217;s a <strong>total limit</strong> of $66,000 (2024) that includes all contributions to the 401(k). This means you can contribute the difference ($39,500) as <strong>after-tax money</strong>.</p></li><li><p>He contributes $39,500 in <strong>after-tax money</strong> to his 401(k) which equals $3,292 per month.</p></li><li><p>He then <strong>converts the $3,292 per month</strong> into Roth 401(k). and this money grows <strong>tax-free forever</strong> and he won&#8217;t pay taxes when he withdraws it in retirement.</p></li></ol><div><hr></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/2UvL6/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/123fe7ec-f5a5-4b5c-8efd-2a1ab9eb6e38_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:479,&quot;title&quot;:&quot;Monthly Savings Table with Mega Backdoor Roth&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/2UvL6/1/" width="730" height="479" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><blockquote><blockquote><p>Sameer still has $5,290 per month after contributing to Mega Backdoor Roth. Once you&#8217;ve maximized your <strong>401(k)</strong>, <strong>HSA</strong>, and <strong>Mega Backdoor Roth contributions</strong>, the next step is to invest surplus money in <strong>taxable accounts</strong> strategically. </p></blockquote></blockquote><h2><strong>Taxable Accounts</strong></h2><p>To open a taxable brokerage account, select a prominent brokerage firm such as <strong>Fidelity, Vanguard, or Charles Schwab</strong>. For individuals who intend to relocate outside the USA for retirement, it&#8217;s crucial to evaluate whether the brokerage firm permits account operations beyond the USA. For instance <strong>Charles Schwab</strong><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-2" href="#footnote-2" target="_self">2</a> allows individuals residing in India to continue managing their accounts when they leave USA, while <strong>Fidelity</strong><a class="footnote-anchor" data-component-name="FootnoteAnchorToDOM" id="footnote-anchor-3" href="#footnote-3" target="_self">3</a><strong>, Vanguard only allow limited activity</strong>. However, it&#8217;s essential to confirm this aspect when choosing your brokerage firm.</p><p><strong>Index Funds</strong> and <strong>ETFs (Exchange-Traded Funds)</strong> are two types of <strong>investment funds</strong> that allow you to invest in a broad group of stocks or bonds, rather than just a single company. <strong>Example</strong>: If you invest in the <strong>Vanguard S&amp;P 500 Index Fund (VFIAX)</strong>, you are buying a small piece of all 500 companies in the S&amp;P 500. </p><p>Below are some of the commonly used Index Funds. You can choose to pick any one based on your requirements. </p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/wcmTz/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/b9b0503c-02b9-4281-9b17-505213d3617d_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:576,&quot;title&quot;:&quot;Index Fund Options&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/wcmTz/1/" width="730" height="576" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/MD59w/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e03a752c-17a3-4775-9745-12a17a68274d_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:356,&quot;title&quot;:&quot;Aggressive Portfolio Example &quot;,&quot;description&quot;:&quot;Estimated Total Portfolio Return: ~8%-9% annually for an aggressive portfolio with 90% stocks and 10% bonds.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/MD59w/1/" width="730" height="356" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h3><strong>Recommendation</strong></h3><ul><li><p><strong>Simplify with VTWAX</strong>: If you prefer one fund for stocks, <strong>Vanguard Total World Stock Index Fund (VTWAX)</strong> is ideal.</p></li><li><p><strong>DIY Split with Fidelity/Schwab</strong>: For cost-conscious investors, combine <strong>Total Market</strong> and <strong>International</strong> funds from Fidelity or Schwab to replicate global diversification.</p></li></ul><h3><strong>Actions Sameer Takes for Taxable Accounts</strong></h3><ul><li><p>Given Sameer is just 30 years old he can choose aggressive portfolio which focuses on stocks, especially large U.S. companies in the <strong>S&amp;P 500</strong>. Sameer invests the $5,000 into <strong>VFIAX</strong> or <strong>FXAIX</strong> per month. </p></li></ul><h2>Lets Recap</h2><blockquote><blockquote><ul><li><p>Sameer saves $8,500 per month after taxes. He prioritizes investing <strong>$3,292 per month by using Mega Backdoor Roth. </strong></p></li><li><p>Sameer invests the <strong>remaining $5,000 per month</strong> into <strong>VFIAX</strong> or <strong>FXAIX</strong> Index Fund in any brokerage account (Fidelity/Vanguard/Charles Schwab). </p></li></ul></blockquote></blockquote><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/2Pp4v/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6be91839-9928-4476-ba55-b48a067ebd4c_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:483,&quot;title&quot;:&quot;Annual Savings for Sameer&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/2Pp4v/1/" width="730" height="483" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-1" href="#footnote-anchor-1" class="footnote-number" contenteditable="false" target="_self">1</a><div class="footnote-content"><p><strong>Not All Companies Allow This:</strong> Amazon&#8217;s 401(k) plan specifically permits <strong>after-tax contributions</strong> and <strong>in-plan Roth conversions</strong>, which are essential for the Mega Backdoor Roth strategy.</p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-2" href="#footnote-anchor-2" class="footnote-number" contenteditable="false" target="_self">2</a><div class="footnote-content"><p><a href="https://international.schwab.com/">Charles Schwab International Account</a></p></div></div><div class="footnote" data-component-name="FootnoteToDOM"><a id="footnote-3" href="#footnote-anchor-3" class="footnote-number" contenteditable="false" target="_self">3</a><div class="footnote-content"><p>Both Fidelity and Vanguard Account holders moving to eligible countries outside USA may maintain their existing accounts, but will not be able to establish new accounts. Unsolicited trades for most stocks and Exchange Traded Funds (ETFs) will continue to be allowed, but purchases of new mutual funds or adding to existing funds will be unavailable, although automatic dividend reinvestment can continue.</p></div></div>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 4 - Optimizing Tax Advantage Investments]]></title><description><![CDATA[In this post we discuss what all steps we should take to saves taxes while at the same time building an investment portfolio.]]></description><link>https://www.codetofire.com/p/fire-chapter-4-optimizing-tax-advantage</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-4-optimizing-tax-advantage</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Fri, 31 Jan 2025 16:26:08 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JVYU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JVYU!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JVYU!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JVYU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1937126,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JVYU!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!JVYU!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F90a380fd-14e3-40ea-b415-42c85f72d4bc_1080x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>How do we go about finding out if Sameer can accumulate $4M - $5M in the next 10 years? Achieving financial independence (FI) involves careful planning, disciplined saving, and smart investing. </p><p>Let&#8217;s take a look at the steps Sameer has taken to reach financial independence. If you want to know the nitty-gritty, check out those posts.</p><div><hr></div><h2><strong>Step 1 : Understand Your Financial Independence Goal</strong></h2><ol><li><p><strong>Define FI: </strong>FI means having enough investments and savings to cover your living expenses indefinitely without relying on employment income.</p></li><li><p><strong>Calculate Your FI Number: </strong>We have established that Sameer needs <strong>$4M - $5M</strong> to successfully retire <strong>in Seattle, WA in next 10 years.</strong> </p></li></ol><div><hr></div><h2><strong>Step 2: Assess Your Current Financial Situation</strong></h2><ul><li><p><strong>Track Your Income and Expenses:</strong> We analyzed Sameer&#8217;s annual expenses and savings over the past eight years using Fidelity Full View.</p></li><li><p>Sameer&#8217;s total annual compensation is $350,000, which includes a base salary of $200,000 and RSUs of $150,000.</p></li><li><p><strong>Calculate Net Worth:</strong> Sameer&#8217;s net worth is approximately $1,050,000 ($930,000 + $120,000).</p></li><li><p><strong>Establish an Emergency Fund:</strong> Sameer has 12 months&#8217; worth of expenses ($120,000) in a liquid, low-risk account (High Yield Savings Account).</p></li></ul><div><hr></div><p>In this post we will focus on building a strong foundation on <strong>prioritizing investments</strong> i.e. indicating the appropriate order in which investments go into different accounts. <strong>This post will specifically focus on optimizing tax-advantage accounts which include 401(k) and HSA. </strong>Here is a general account funding priority that often works well for many people<sup>.</sup></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!soTR!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!soTR!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 424w, https://substackcdn.com/image/fetch/$s_!soTR!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 848w, https://substackcdn.com/image/fetch/$s_!soTR!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 1272w, https://substackcdn.com/image/fetch/$s_!soTR!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!soTR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png" width="728" height="395.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png&quot;,&quot;srcNoWatermark&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6aacda6c-11ab-49e8-9418-6bc40e0bfbec_2260x1228.png&quot;,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:791,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!soTR!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 424w, https://substackcdn.com/image/fetch/$s_!soTR!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 848w, https://substackcdn.com/image/fetch/$s_!soTR!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 1272w, https://substackcdn.com/image/fetch/$s_!soTR!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fad425621-ee7f-44b3-b5e2-70b0de4150e1_2260x1228.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h2><strong>Roth IRA</strong></h2><p>A <strong>Roth IRA</strong> is a special type of retirement account that lets your money grow <strong>tax-free</strong>. Here's how it works in simple terms:</p><ul><li><p><strong>You Pay Taxes Now, Not Later:</strong> When you contribute to a Roth IRA, it&#8217;s from your after-tax income, which means you&#8217;ve already paid taxes on that money, such as your paycheck. The significant advantage is that once your money is in the Roth IRA, it grows tax-free. This means you won&#8217;t have to pay taxes when you withdraw it during retirement.</p></li><li><p><strong>Tax-Free Growth for the Long Haul:</strong> Any interest, dividends, or gains your investments generate within the account won&#8217;t be subject to taxes when you withdraw them in the future.</p></li><li><p><strong>Flexibility:</strong> You have the freedom to withdraw the money you contributed (but not the earnings) anytime without incurring penalties or taxes. It serves as a safety net.</p></li></ul><h4>Actions Sameer Should Take</h4><p>In 2024, you can contribute the full amount if your modified adjusted gross income (MAGI) is below $153,000 (single) or $228,000 (married filing jointly). Partial contributions are allowed if you're over these limits but below $163,000 (single) or $243,000 (married filing jointly). <strong>Given Sameer MAGI is $350,000 he cannot contribute to Roth IRA.</strong> </p><h2><strong>401(k)</strong></h2><p>Amazon and other FAANG employers provide the option to contribute to a Traditional 401k and an after-tax Roth 401k with automatic rollover, commonly referred to as the &#8220;mega back-door roth.&#8221; We&#8217;ll delve into the &#8220;mega back-door roth&#8221; in the subsequent post, as it involves a taxable investment. For now, let&#8217;s concentrate on the Traditional 401(k). You have the flexibility to choose the percentage of your salary you wish to invest, and these contributions will be automatically deducted from your paycheck.</p><h4><strong>Tax Benefits</strong></h4><p>Contributions are made before taxes, thereby reducing your taxable income in the present. For instance, if Sameer&#8217;s base salary is $200,000 and you contribute $22500 (the 2024 contribution limit), you&#8217;ll only be subject to taxation on $177,500.<strong> </strong>Investments in your 401(k) grow tax-free until withdrawal during retirement.</p><h4><strong>Employer Matching (Free Money!)</strong></h4><p>Many employers, such as Amazon, provide a 401(k) match. Amazon&#8217;s match is 50% of the first 4% of the salary you contribute. For instance, if Sameer earns $200,000 and contributes $8,000 (4% of your salary), Amazon will contribute an additional $4,000.</p><p>By default Amazon will set your investments for all your contributions to a good low-fee Vanguard Target Date retirement funds which are all-in-one investment options designed to simplify retirement investing. They are a type of mutual fund that automatically adjusts their asset allocation (mix of stocks and bonds) over time, based on your target retirement year. These are a perfect example of <strong>Set-It-and-Forget-It portfolio which is ideal </strong>for investors who want a hands-off approach. There is no need to rebalance your portfolio&#8212;Vanguard will do it for you.</p><h4>Actions Sameer Should Take</h4><ul><li><p>In order to maximize 401(k), <strong>Sameer will invest 11.5 % of his paycheck monthly </strong>which will help him maximize both 401(k) limit ($24,000) and Amazon&#8217;s contribution ($4,000)<strong>. </strong>This 11.5% comes from the simple math of <strong>(Max Contribution Allowed)/(Base Salary).</strong></p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!F2yA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!F2yA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 424w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 848w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 1272w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!F2yA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png" width="298" height="264.79891304347825" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:654,&quot;width&quot;:736,&quot;resizeWidth&quot;:298,&quot;bytes&quot;:62140,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!F2yA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 424w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 848w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 1272w, https://substackcdn.com/image/fetch/$s_!F2yA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff8b0ebdc-ad6b-46e7-984b-6bc39544acfd_736x654.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Fidelity 401(k) Contribution Update Screenshot</figcaption></figure></div><div><hr></div><h2>HSA </h2><p>An <strong>HSA (Health Savings Account)</strong> is a <strong>triple tax-advantaged savings tool</strong> that allows you to contribute up to <strong>$3,850 annually</strong>, reducing your taxable income. The money grows <strong>tax-free</strong> and can be used for <strong>qualified medical expenses</strong> without tax penalties. Contributions, growth, and withdrawals for medical expenses all benefit from <strong>triple tax advantages</strong>. Once your HSA balance reaches a certain amount (usually around $1,000 or more), you can <strong>invest</strong> the funds in a variety of investment options, such as mutual funds or stocks, just like in a 401(k). This means your HSA can grow <strong>faster</strong> over time, especially if you&#8217;re not using it for medical expenses right away.</p><h4>Actions Sameer Should Take</h4><ul><li><p>In order to maximize HSA, <strong>Sameer will invest $321 ($3850/12) of his monthly paycheck monthly </strong>which will help him maximize HSA value and reduce his taxable income.</p></li></ul><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading Code to FI/RE! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h2>Monthly Salary Breakdown</h2><p>Now that Sameer has taken advantage of Tax-Advantaged Accounts, let&#8217;s compare two scenarios. We&#8217;ll assume Sameer is a <strong>married individual filing taxes jointly.</strong></p><ul><li><p><strong>Scenario 1: Annual Savings with Contributing to 401(k) &amp; HSA </strong></p></li><li><p><strong>Scenario 2: Annual Savings with Not Contributing to 401(k) or HSA </strong></p></li></ul><h3>Scenario 1: Contributing to 401(k) and HSA (With Employer Match)</h3><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/7iaUE/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ede92c02-68be-40d6-87fb-5aa009040ebb_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:505,&quot;title&quot;:&quot;Breakdown of Monthly Salary&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/7iaUE/1/" width="730" height="505" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h4><strong>Annual Take-Home Pay (With 401(k) and HSA)</strong>:</h4><ul><li><p><strong>Annual Take-Home:</strong> $10,423.46 &#215; 12 = <strong>$125,081.52</strong></p></li><li><p>Estimated <strong>federal income tax</strong> for $169,750 taxable income: <strong>$26,708.50</strong>.</p></li><li><p><strong>Pre-Tax Contribution: $34,250</strong></p><ul><li><p><strong>With 401(k) and HSA Contributions): $26,500 (</strong>$22,500 from Employee Contribution + $4,000 from Employer Match)</p></li><li><p><strong>HSA Contribution:</strong> $7,750</p></li></ul></li></ul><h3>Scenario 2 : Not Contributing to 401(k) or HSA</h3><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/0s2EE/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0bf3f022-3963-4740-86e6-2618da8cfb04_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:417,&quot;title&quot;:&quot;Breakdown of Monthly Salary&quot;,&quot;description&quot;:&quot;Breakdown of Monthly Salary without 401K and HSA contribution&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/0s2EE/1/" width="730" height="417" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h4><strong>Annual Take-Home Pay (No 401(k) or HSA)</strong>:</h4><ul><li><p><strong>Annual Take-Home:</strong> $12,569.87 &#215; 12 = <strong>$150,838.44</strong></p></li><li><p>Estimated <strong>federal tax</strong>: <strong>$31,429.50</strong>.</p></li></ul><div><hr></div><h2>Final Thoughts</h2><p>We observe that while the take home salary increase from <strong>$125,081.52 to $150,838.44 ($25,757)</strong> in <strong>Scenario 2</strong>, the total amount available for investment is <strong>37%</strong> higher in Scenario 1 (<strong>$34,250</strong> as compared to $25,000) as Sameer was not only able to invest an additional <strong>$9250 </strong>but<strong> </strong>also reduced his taxes by<strong> $4721 </strong>. Also if we assume a modest <strong>6% annual return</strong> on 401(k) and HSA contributions, compounded annually we see that their total savings is is about ~<strong>$10,500 more (42% higher)</strong> in Scenario 1.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/wY6Lo/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9c6a52e5-6bfe-45a4-ad4e-95a81518b299_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:294,&quot;title&quot;:&quot;Final Comparison (One Year Growth)&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/wY6Lo/1/" width="730" height="294" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2><strong>Lets Recap</strong></h2><ul><li><p>In this post we identified how to go about maximizing your tax-advantaged accounts like 401(k) and HSA.</p></li><li><p>Amazon offers the option to maximize 401(k) and HSA contributions through Fidelity via the NetBenefits App. <strong>This setup also automates our tax-advantaged accounts.</strong></p></li><li><p>The <strong>employer's 401(k) match</strong> and <strong>tax benefits</strong> from contributing to the <strong>401(k)</strong> and <strong>HSA</strong> help boost the total savings, despite the lower take-home pay due to the contributions.</p></li></ul><ul><li><p><strong>We observed that if the person contributes to 401(k) and HSA</strong>, their total savings are <strong>higher</strong> than if they didn&#8217;t contribute to these accounts. The <strong>investment growth in 401K and HSA can</strong> further enhances the savings from the initial contributions.</p></li></ul><p>In the next post, we will look at how to invest and diversify our taxable investments (post-tax money) to build our final leg of portfolio towards financial independence. </p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 3 - Finding Your Net-worth]]></title><description><![CDATA[What is my net-worth? How do I automate tracking my expenses and savings?]]></description><link>https://www.codetofire.com/p/fire-chapter-3-finding-your-net-worth</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-3-finding-your-net-worth</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Wed, 29 Jan 2025 02:40:10 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!I2R3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!I2R3!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!I2R3!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!I2R3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/cf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1615966,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!I2R3!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!I2R3!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fcf5fafca-8b37-4920-a37e-c116f490744a_1080x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In the last <a href="https://codetofire.substack.com/p/fire-chapter-2-define-the-goal">post</a> we arrived at the FI/RE number for Sameer. We also established tracking mechanism for expenses, savings and net-worth.</p><blockquote><blockquote><p><strong>FI/RE Goal:</strong> Sameer would need a corpus of $4M to $5M to become financial independent. </p></blockquote></blockquote><p>In this post, we&#8217;ll explore Sameer&#8217;s net worth, which will serve as a starting point for our current savings. </p><h2><strong>How much do I have right now?</strong></h2><p>This essentially involves calculating the total net worth of your investments, which encompasses stocks, index funds, bonds, and cash. However, I would exclude the value of your primary residence from this calculation. If you&#8217;re using any of the aforementioned apps, this process would be relatively straightforward, as they can also categorize your source of income and investment allocation. Below is a screenshot of information that Fidelity Full View provides. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HQLA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HQLA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 424w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 848w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 1272w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HQLA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png" width="2470" height="620" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/df9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:620,&quot;width&quot;:2470,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:96279,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HQLA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 424w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 848w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 1272w, https://substackcdn.com/image/fetch/$s_!HQLA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fdf9ae95f-c3a7-4f24-9a22-e6a548843c34_2470x620.png 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Before delving into Sameer&#8217;s savings, let&#8217;s grasp some fundamental concepts about various asset classes. This knowledge is crucial in determining the allocation of your portfolio to different asset classes and in managing the overall risk and return of your portfolio.</p><ol><li><p><strong>Stocks</strong>, which represent ownership shares in publicly traded companies, provide the potential for substantial long-term capital appreciation and dividend income. However, they are also known for their higher volatility and growth potential.</p></li><li><p><strong>Bonds</strong>, issued by governments, municipalities, and corporations, are debt securities that offer fixed interest payments over a predetermined period, accompanied by the return of the principal amount at maturity. Compared to stocks, bonds are generally considered less risky and provide more stable income.</p></li><li><p><strong>Real estate investments</strong> encompass residential properties, commercial properties, and real estate investment trusts (REITs). These investments provide potential income through rental payments and the possibility of capital appreciation.</p></li></ol><p>During his first three years prior to joining Amazon, he diligently used his savings to pay off student debt, which ultimately helped him complete his B.E. in Computer Science. Its safe to assume debt of $200,000 as the cost of B.E. in Computer Science in USA. Let&#8217;s analyze Sameer&#8217;s career trajectory, given he began as an SDE-1, 8 years ago at Amazon. During years 5 and 6, he got married and had a kid. I&#8217;ve sourced his starting compensation for entry-level positions from levels.fyi, a reputable industry resource. Over the course of 8 years, we&#8217;ll track his salary growth and annual expenses. Finally, we&#8217;ll calculate the total savings he accumulated during this period.</p><p>If we checkout out Sameer&#8217;s impressive salary history over the past eight years we observe the total compensation has doubled, and he&#8217;s been promoted twice. His latest compensation package, worth $350,000, includes a base salary of $200,000 and RSUs valued at $150,000. This is quite typical for employees at FAANG companies.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/6Kgek/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c6000fbb-7800-46e2-9410-370f7ac5d932_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:473,&quot;title&quot;:&quot;New Hire Career Progression and Salaries&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/6Kgek/1/" width="730" height="473" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>In the two tables below, we analyze the annual expenses for eight years. </p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/aO4Qr/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/e9bb15b3-982e-4925-ad44-88b8505e1218_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:457,&quot;title&quot;:&quot;Annual Expenses (Single, Years 1&#8211;3) &quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/aO4Qr/1/" width="730" height="457" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/8bHqt/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ab615cc6-c2d4-4b29-9cca-4f139651e0dd_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:495,&quot;title&quot;:&quot;Annual Expenses Year 4 and Year 5.&quot;,&quot;description&quot;:&quot;Expenses After Marriage and Having a Child (Years 4&#8211;5)&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/8bHqt/1/" width="730" height="495" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>It&#8217;s evident that the annual expenses nearly doubled once Sameer got married. During his single years, he managed to save 40% to 50% of his salary, whereas in later years, his savings dropped to 25% to 35%. Lets see how much Sameer has saved over the last 8 years. </p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/G1ICc/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/6dcbdf9d-62a5-45c7-9e6f-a70130636963_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:500,&quot;title&quot;:&quot;Savings Projections&quot;,&quot;description&quot;:&quot;Assume a 24% federal tax rate (approx.), state taxes, and disciplined budgeting.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/G1ICc/1/" width="730" height="500" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h3><strong>Summary of Financial Milestones</strong></h3><ul><li><p><strong>Years 1&#8211;4 (Single):</strong> Aggressive savings (~40&#8211;50% savings rate) due to lower expenses.</p></li><li><p><strong>Years 5&#8211;8 (Married with Child):</strong> Savings rate decreases to ~20&#8211;35%, but total savings grow due to higher income.</p></li><li><p><strong>Cumulative Savings After 8 Years:</strong> <strong>~$823,000</strong>.</p></li></ul><p>Based on the data above, Sameer saved ~$100,000 annually on average over the last 8 years which totals to ~$823,800. Setting aside 12 months of savings in emergency fund which is roughly ~$120,000 and removing $200,000 debt, Sameer invested the remaining $503,000 in an index fund. Assuming Sameer invested this money in balanced portfolio (60% Stocks / 40% Bonds) it would fetch him 8% returns (based on historic data). $503,000 <a href="https://www.nerdwallet.com/calculator/investment-calculator">invested</a> over the last 8 years would now be ~$<strong>931,000</strong>. Don&#8217;t worry, we will look at different options to invest in the next post. For now just assume it was invested in a diversified index fund which fetched him 8% returns. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!DHEM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!DHEM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 424w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 848w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!DHEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png" width="1456" height="1324" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/acaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1324,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:131523,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!DHEM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 424w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 848w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 1272w, https://substackcdn.com/image/fetch/$s_!DHEM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Facaa3779-7ee0-4451-8471-9dd689d0b71e_1540x1400.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><blockquote><p><strong>Including the emergency fund his net-worth becomes $~1,050,000 ($930,00 + $120,000). </strong></p></blockquote></blockquote><h2>Lets Recap</h2><ul><li><p>We have established that Sameer needs $4M - $5M to successfully retire in next 10 years. </p></li><li><p>Sameer has $120,000 invested in an emergency fund which is HYSA (High Yield Savings Account). </p></li><li><p>Sameer had a whopping $100,000 savings every year for the past 8 years! That&#8217;s a lot of money! After paying off his education loans, he managed to build a pretty impressive corpus of around $931,000 by investing $503,000 in an index fund (<strong>at an 8% yield)</strong>. That&#8217;s some serious financial success!</p></li><li><p>Sameer&#8217;s net-worth stands at <strong>$1,050,000</strong> (<strong>$930,00 + $120,000)</strong></p></li></ul><p>In our next post, we&#8217;ll delve into the actions Sameer should take to maximize savings, identify investment streams and minimize taxes, thereby building a efficient portfolio. We&#8217;ll also assess the timeframe within which this target is achievable and take proactive steps to reach our ultimate FIRE goal. Make sure to subscribe to be the first to know when the next phase is published.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 2 - Define The Goal]]></title><description><![CDATA[As a FAANG software engineer, what is the FIRE number I should aim for? How do I come up with this number? We answer these questions by using a real world example in this post.]]></description><link>https://www.codetofire.com/p/fire-chapter-2-define-the-goal</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-2-define-the-goal</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Fri, 24 Jan 2025 04:24:48 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!jcHu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!jcHu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!jcHu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!jcHu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1745516,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!jcHu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!jcHu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5c8336f2-68a0-4ced-8daa-c60527dcde7a_1080x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>Welcome to another post. In the last <a href="https://codetofire.substack.com/p/fire-chapter-1-defining-the-basics">post</a> we understood what financial independence means and briefly went over different types and the amount of savings you need to achieve FI/RE. In this chapter we will focus on real world example of defining the problem and identifying how much we need to successfully retire. </p><h2>Real Life Example</h2><h3><strong>Phase 1</strong> - <strong>Understand The Problem</strong></h3><p>Sameer, a 30-year-old Sr. Engineer at Amazon, earns an annual compensation between $300,000 and $400,000. He began his career as a Software Engineer (SDE-1) at Amazon  8 years ago. Currently, he lives in a house and resides with his wife and their kid. His goal is to retire by the age of 40 in a city with a high cost of living, such as Seattle (or its suburbs like Bellevue, Bothell, Issaquah, Snoqualmie, and Maple Valley).</p><p><strong>Stated Goal:</strong> Save enough money to be financially independent by the age of 40 <strong>(10 years away from retirement).</strong></p><blockquote><blockquote><p><strong>Personally my FI/RE mission</strong> is to achieve financial independence and the ability to retire early so that I can pursue my passions without financial constraints. I envision a life where work becomes an optional choice rather than a mandatory one, allowing me to have more time for my family, personal growth, and experiences.</p></blockquote></blockquote><h3><strong>Phase 2</strong> - <strong>Identify Key Areas (KPIs)</strong></h3><p>In this phase, we break down our overall goal into smaller, achievable objectives. Additionally, we pinpoint key investment areas (or Key Performance Indicators) that can assist us in reaching these goals. Now, if we consider the logical approach, the only viable ways to enhance your net worth are to. </p><ul><li><p>Minimize your expenditures.</p></li><li><p>Increase your savings.</p></li><li><p>Increase your investments.</p></li><li><p>Identify new income streams.</p></li></ul><p>Before we can take any action, we need to establish a baseline for each of the above areas.</p><ul><li><p><strong>Expenses</strong>: How much do I spend annually?</p></li><li><p><strong>Savings</strong>: How much am I saving annually?</p></li><li><p><strong>Portfolio</strong>: What is my current portfolio of investments?</p></li><li><p><strong>Passive Income:</strong> How much of my income is coming from dividends and interest?</p></li></ul><blockquote><blockquote><p>Before we delve into these we need to get an answer to <strong>&#8220;How much is enough to retire?&#8221;</strong></p></blockquote></blockquote><p>Essentially, we require some kind of instrumentation to monitor the above four key metrics. When I began tracking my expenses in 2016, there was only one app called Mint (which has since ceased operations). Fortunately, in today&#8217;s world, there are numerous excellent free and paid tools available that can help establish a baseline for you. Below are some options, and you can choose any one of them based on your requirements. Personally, I use Quicken Simplify and Fidelity Full View because my employer uses Fidelity to manage my 401K, HSA, and RSUs. I like Quickens user-friendly interface and probably has the cheapest subscription of all. Fidelity has excellent customer service and is free, but I sincerely hope they integrate this feature into the mobile app so that I don&#8217;t have to switch back to the web or desktop.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/1WQlQ/1/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9411dc33-aba1-40dd-9b69-0f8029f8b0d7_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:576,&quot;title&quot;:&quot;Expense, Savings, and Net Worth Tracking Tools Comparison&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/1WQlQ/1/" width="730" height="576" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>Continuing our example, here&#8217;s the view of annual expenses you can expect with Fidelity Full View. In 2024, Sameer had an annual expense of $120,000, which included mortgage, utilities, groceries, daycare travel, and insurance. To get a more accurate picture, I suggest averaging out expenses for FY22, FY23, and FY24 to exclude any one-off expenses that could skew this number. Now that we have our annual expenses tracked, we can easily identify our FI/RE goals.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JmcT!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JmcT!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 424w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 848w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 1272w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JmcT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png" width="1255" height="656" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/da38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:656,&quot;width&quot;:1255,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:108842,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JmcT!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 424w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 848w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 1272w, https://substackcdn.com/image/fetch/$s_!JmcT!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fda38f2b5-e4d8-4349-9b0f-b56f8b81f38c_1255x656.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>Factoring in Healthcare and College Costs</h4><p>As we observed in the <a href="https://substack.com/home/post/p-155189956">previous post</a>, we must factor in $1,000,000 for healthcare insurance and college expenses for one child. This amount is crucial to sustainably cover these expenses using the safe withdrawal method.</p><h2>Lets Recap</h2><p><strong>How much does Sameer need to afford the same standard of living after retirement?</strong></p><blockquote><blockquote><ul><li><p>Using Fidelity Full View, we identified Sameer&#8217;s annual expenses to be $120,000.</p></li><li><p>Using the 3% Rule, Sameer would require a substantial corpus of $4,000,000 (calculated as $120,000 multiplied by 33). </p></li><li><p>Conversely, the 4% Rule suggests a more conservative corpus of $3,000,000 (derived from $120,000 multiplied by 25). </p></li><li><p>However, when we factor in the cost of healthcare and college tuition, which amounts to $1,000,000, these figures increase the corpus target to approximately $4 million to $5 million (rounded to the nearest million).</p></li><li><p>If Sameer aims to retire early while preserving their current lifestyle and maintaining the same spending habits, they&#8217;ll find themselves somewhere between these two figures. </p></li><li><p><strong>This becomes the Financial Independence/Retire Early (FI/RE) goal for Sameer, which spans from $4 million to $5 million.</strong></p></li></ul></blockquote></blockquote><p>Where did 25x and 33x come from? I have covered in detail on why early retirees should target 33x in this post below.</p><div class="digest-post-embed" data-attrs="{&quot;nodeId&quot;:&quot;d094239b-5309-4dad-9522-da627836300d&quot;,&quot;caption&quot;:&quot;What is FI/RE (Financial Independence/Retire Early)?&quot;,&quot;cta&quot;:null,&quot;showBylines&quot;:true,&quot;size&quot;:&quot;sm&quot;,&quot;isEditorNode&quot;:true,&quot;title&quot;:&quot;FI/RE Chapter 1 - Defining The Basics&quot;,&quot;publishedBylines&quot;:[{&quot;id&quot;:122990536,&quot;name&quot;:&quot;Nikhil Khorwal&quot;,&quot;bio&quot;:&quot;&#128104;&#127996;&#8205;&#128187; | &#127929; | &#128249;,&#128205;&#127966; &#127956;&#65039; EM based in the Seattle area. 10 years in FAANG. Chasing financial freedom and PNW adventures&#8212;unfiltered and real. &quot;,&quot;photo_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/a9cffdfc-b32c-44d0-bb0a-ba1059648ecc_1315x1315.png&quot;,&quot;is_guest&quot;:false,&quot;bestseller_tier&quot;:null}],&quot;post_date&quot;:&quot;2025-01-20T11:01:55.969Z&quot;,&quot;cover_image&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png&quot;,&quot;cover_image_alt&quot;:null,&quot;canonical_url&quot;:&quot;https://codetofire.substack.com/p/fire-chapter-1-defining-the-basics&quot;,&quot;section_name&quot;:null,&quot;video_upload_id&quot;:null,&quot;id&quot;:155189956,&quot;type&quot;:&quot;newsletter&quot;,&quot;reaction_count&quot;:0,&quot;comment_count&quot;:0,&quot;publication_id&quot;:null,&quot;publication_name&quot;:&quot;code-to-fire&quot;,&quot;publication_logo_url&quot;:&quot;https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb1068a1-e90a-477d-aa1d-0f3b2e77b2df_256x256.png&quot;,&quot;belowTheFold&quot;:true,&quot;youtube_url&quot;:null,&quot;show_links&quot;:null,&quot;feed_url&quot;:null}"></div><p>Now that we&#8217;ve defined our goal range, we can finally move on to identifying opportunities to reach it. Don&#8217;t miss out on the next phase; subscribe to be notified as soon as it&#8217;s published.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://buymeacoffee.com/nikhilkhorwal&quot;,&quot;text&quot;:&quot;Buy Me A Coffee&quot;,&quot;action&quot;:null,&quot;class&quot;:&quot;button-wrapper&quot;}" data-component-name="ButtonCreateButton"><a class="button primary button-wrapper" href="https://buymeacoffee.com/nikhilkhorwal"><span>Buy Me A Coffee</span></a></p><p><strong>Investment Disclaimer:</strong> The information presented here is for educational purposes only and does not constitute financial, investment, tax, or professional advice. Investments come with inherent risks and are not guaranteed; errors in data may occur. Past performance, including backtest results, does not guarantee future results. Please be aware that indexes serve as benchmarks and are not directly investable. All examples presented are purely hypothetical. Conduct your own thorough research and seek professional advice before making any investment decisions.</p>]]></content:encoded></item><item><title><![CDATA[FI/RE Chapter 1 - Defining The Basics]]></title><description><![CDATA[What is financial independence? How much money do I need to retire comfortably?]]></description><link>https://www.codetofire.com/p/fire-chapter-1-defining-the-basics</link><guid isPermaLink="false">https://www.codetofire.com/p/fire-chapter-1-defining-the-basics</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Mon, 20 Jan 2025 11:01:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!N_cL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>What is FI/RE (Financial Independence/Retire Early)?</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!N_cL!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!N_cL!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!N_cL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png" width="1080" height="1080" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1080,&quot;width&quot;:1080,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:2432852,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!N_cL!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 424w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 848w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 1272w, https://substackcdn.com/image/fetch/$s_!N_cL!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8fda5be5-2575-48bc-8210-009cf417a631_1080x1080.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>It is typically defined as having enough income (from investments, passive businesses, real estate, etc.) to pay for your reasonable living expenses for the rest of your life. You have the freedom to do what you want with your time (within reason). Working (full or part-time), hobbies which generate income, or other activities are optional at this point. The basic tenet of FI is to spend less than you earn and invest the difference into things that earn money for you. The core philosophy involves aggressive saving, strategic investing, and intentional living to gain the freedom to leave full-time work decades ahead of schedule.</p><h2><strong>FIRE Acronyms &amp; Strategies Comparison</strong></h2><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/I4BTO/5/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8af81bf2-4c6b-482a-a5e6-b545c301834b_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:668,&quot;title&quot;:&quot;FI/RE Types&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/I4BTO/5/" width="730" height="668" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2><strong>The 4% Rule in FIRE and Why Early Retirees Should Avoid This Number</strong></h2><p>The 4% rule is a fundamental withdrawal strategy in the Financial Independence, Retire Early (FIRE) movement that suggests withdrawing 4% of your total retirement portfolio in the first year of retirement and then adjusting subsequent withdrawals annually for inflation. This model aims to provide a sustainable income stream for approximately 30 years.</p><p>Assuming a life expectancy of 95 years, the 4% rule works well for people who plan to retire at the age of 65 (a 30-year horizon). <strong>However, for early retirees (those who are looking for a 50-year horizon), <a href="https://investor.vanguard.com/investor-resources-education/article/fueling-the-fire-movement-updating-the-4-rule-for-early-retirees">this model only has a 36% chance of succeeding</a>.</strong></p><p>Therefore, experts suggest a 3% withdrawal rate for longer retirement periods (a 50-year horizon). This translates to targeting 33 times your annual expenses. <strong>I personally lean more towards conservatism and set a 3% withdrawal rate goal in my calculations.</strong> The significance of this approach lies in the fact that there has never been a single period in US history when the 3% rule has failed.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">code-to-fire is a reader-supported publication. If you enjoy my work, consider becoming a free or paid subscriber to receive new posts and support my efforts.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><h3>Example</h3><p>If Sam had invested $3,000,000 in a portfolio averaging 8% annual returns, the 4% rule suggests that Sam can withdraw $120,000 in the first year. This is the only year when Sam calculates 4% of their portfolio. From then on, Sam will base future withdrawals on the amount they withdrew the previous year and adjust them for inflation. Historically, inflation has averaged around 3%. In this case, Sam&#8217;s withdrawals would appear as follows:</p><ul><li><p>Year 1 Expenses: $120,000</p></li><li><p>Year 2 Expenses: $120,000 x 1.03 = $123,600</p></li><li><p>Year 3 Expenses: $123,600 x 1.03 = $127,308</p></li></ul><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Qy6d!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Qy6d!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 424w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 848w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 1272w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Qy6d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png" width="728" height="254.5" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:false,&quot;imageSize&quot;:&quot;normal&quot;,&quot;height&quot;:509,&quot;width&quot;:1456,&quot;resizeWidth&quot;:728,&quot;bytes&quot;:291946,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Qy6d!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 424w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 848w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 1272w, https://substackcdn.com/image/fetch/$s_!Qy6d!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc84a9055-1436-4f15-8e7c-7b9fb07947fa_2266x792.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h2><strong>How much do I need to retire?</strong></h2><p>Before we delve into the actual amount, let&#8217;s make some assumptions.</p><ul><li><p><strong>Family Size:</strong> We assume a family size of four and plan for various scenarios, including dual-income single-kid households (DISK), dual-income no-kid households (DINK), single-income households, and individuals.</p></li><li><p>The FI/RE Corpus calculations all assume Fat FIRE, which represents the highest amount of money needed to maintain a comfortable lifestyle.</p></li><li><p><strong>Inflation Rate :</strong> Typically assumes a 2% annual inflation rate, which is the Federal Reserve&#8217;s target. In contrast, historical data in the Indian context suggests an annual inflation rate of around 6%. Withdrawals are adjusted annually to match inflation, thereby preserving purchasing power.</p></li><li><p><strong>Corpus Growth Rate:</strong> This portfolio composition strikes a balance between common stocks and intermediate-term Treasury bonds. Historically, a balanced (60/40) portfolio has delivered an average annual return of approximately 8%.</p></li><li><p><strong>Health Insurance:</strong> In all the calculations below, I&#8217;ve specifically excluded the cost of additional health insurance. The primary reason for this is that it can vary significantly depending on an individual&#8217;s lifestyle and the specific healthcare plans available in different states. However, I&#8217;ll provide an example later in the post to illustrate how much buffer you should have to reach your FI/RE goal if you live in King County, Washington.</p></li></ul><h3><strong>FI/RE Corpus Target in USA</strong></h3><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/zjqrv/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1e883afc-6a38-44e3-b130-21b9a6e33a63_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:427,&quot;title&quot;:&quot;Cost of Living Categories for Major U.S. Cities&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/zjqrv/2/" width="730" height="427" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><p>The below table offers insights into the size of a corpus required to retire without actively working for a job. I intentionally refrain from specifying values for various FIRE types, as each individual may have their own definition. Therefore, I base this analysis on annual expenditures, which seems more logical in this context.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/1342s/6/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d3c8cbce-fdeb-40d6-838a-3cbe6df41e58_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:318,&quot;title&quot;:&quot;FI/RE Corpus Target (USA)&quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/1342s/6/" width="730" height="318" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h4>Factoring in Health Insurance and College Tuition</h4><h5>Health Insurance</h5><p>Healthcare represents the most significant uncertainty in FIRE planning, particularly in the United States. Upon achieving financial independence, individuals must fully cover health insurance costs, which can be substantial. In Washington State, a United Healthcare Plan plan for a family of three can cost around $1700 monthly, totaling approximately $25000 annually (which includes healthcare premiums, copays, medicine, and out of pocket estimates). Assuming healthcare costs inflate at 3%, an additional $832,000 ($25000 x 33.33) corpus is required to sustainably cover these expenses using the safe withdrawal method. </p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!w4Nl!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!w4Nl!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 424w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 848w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 1272w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!w4Nl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png" width="1456" height="882" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:882,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:261283,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!w4Nl!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 424w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 848w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 1272w, https://substackcdn.com/image/fetch/$s_!w4Nl!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5e095ff9-78bd-4076-8a3b-6996bbfa08dc_1806x1094.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h5>Future College Expenses</h5><p>Another goal is to be able to fund 4 years of in-state tuition for your kid. Assuming you have 12-15 years to reach that horizon. <a href="https://admit.washington.edu/costs/coa/">University of Washington</a> costs ~$50,000 per year for a 4 year bachelors program. This comes to around ~$200,000 in todays dollar and $320,206 in future value (12 years from now).  Using <a href="https://www.bankrate.com/banking/savings/saving-for-college-calculator/">Bank Rate College Savings Calculator</a> and I find that <strong>if I had ~$150,000 lump sum right now</strong> that should be sufficient enough to cover the full education expense in 12 years (<em>this is roughly an 8% annual return rate</em>).</p><p>This means FIRE seekers must strategically account for healthcare and college fees as a critical component of their long-term financial independence strategy, potentially adjusting their total retirement corpus and exploring healthcare exchange options to manage these escalating costs. To summarize, for someone planning to retire in Washington (King County) they would need to add ~$1,000,000 ($832,000 + $150,000) more to their overall FI/RE goal.</p><blockquote><blockquote><p><strong>Total Breakdown</strong></p><ul><li><p>Healthcare Insurance and College Fee (1 Kid) : <strong>~$1,000,000</strong></p></li><li><p>Annual Expense: <strong>~$4,000,000</strong></p></li><li><p><strong>Total Corpus</strong>: <strong>~$5M ($4M + ~$1M)</strong></p></li></ul></blockquote></blockquote><h3><strong>FI/RE Corpus Target Outside USA (INDIA)</strong></h3><p>This section is tailored for individuals whose ultimate objective is to FIRE outside the United States, preferably in their home country. I&#8217;ll provide an example using India, as that&#8217;s the country I envision retiring in once I achieve financial independence.</p><p><strong>Note:</strong> When planning to return to India, Non-Resident Indians (NRIs) can strategically invest their parking funds in US Dollars. Over the past 30 years, the Indian Rupee has consistently depreciated against the US Dollar, losing approximately 5-6% annually. By preserving their wealth in US Dollars, NRIs can safeguard against currency erosion and potentially earn higher returns. For simplicity, I have assumed all values in USD instead of INR to avoid currency fluctuations.</p><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/RpnuS/2/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1defa912-9bc9-43c5-8a7f-1995b5e168dd_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:316,&quot;title&quot;:&quot;Cost of Living Categories for Major Cities in INDIA&quot;,&quot;description&quot;:&quot;&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/RpnuS/2/" width="730" height="316" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><div id="datawrapper-iframe" class="datawrapper-wrap outer" data-attrs="{&quot;url&quot;:&quot;https://datawrapper.dwcdn.net/AEqB8/6/&quot;,&quot;thumbnail_url&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/17c72d19-aece-414d-8363-f42ad070ab6a_1260x660.png&quot;,&quot;thumbnail_url_full&quot;:&quot;&quot;,&quot;height&quot;:279,&quot;title&quot;:&quot;FI/RE Corpus Target (INDIA) &quot;,&quot;description&quot;:&quot;Create interactive, responsive &amp; beautiful charts &#8212; no code required.&quot;}" data-component-name="DatawrapperToDOM"><iframe id="iframe-datawrapper" class="datawrapper-iframe" src="https://datawrapper.dwcdn.net/AEqB8/6/" width="730" height="279" frameborder="0" scrolling="no"></iframe><script type="text/javascript">!function(){"use strict";window.addEventListener("message",(function(e){if(void 0!==e.data["datawrapper-height"]){var t=document.querySelectorAll("iframe");for(var a in e.data["datawrapper-height"])for(var r=0;r<t.length;r++){if(t[r].contentWindow===e.source)t[r].style.height=e.data["datawrapper-height"][a]+"px"}}}))}();</script></div><h2><strong>Conclusion</strong></h2><ul><li><p>Financial independence (FI) means having enough income from investments to cover living expenses for life, allowing for freedom in time management. Achieving FI requires aggressive saving, strategic investing, and intentional living.</p></li><li><p>The 4% rule proves robust for traditional 30-year retirements, while 3% serves as a conservative baseline for extended retirement horizons (50-year horizon).</p></li><li><p>Regions with a higher cost of living necessitate significantly larger retirement savings. The savings corpus grows proportionally to annual expenses.</p></li><li><p>Healthcare Insurance and College Fees are the most significant uncertainties in FIRE planning, especially in the United States. For individuals planning to achieve FIRE in the US, these factors must be carefully considered and factored into their planning, as they vary significantly from state to state based on the healthcare plans offered.</p></li></ul><p><strong>Disclaimer</strong>: The information provided on this blog is for <strong>informational and educational</strong> purposes only. It should not be construed as professional financial advice. I am not a certified financial advisor, accountant, or financial professional.</p><h2>References</h2><ol><li><p>https://www.investopedia.com/terms/f/four-percent-rule.asp</p></li><li><p>https://www.madfientist.com/safe-withdrawal-rate/</p></li><li><p>https://www.schwab.com/learn/story/beyond-4-rule-how-much-can-you-spend-retirement</p></li><li><p>https://www.investopedia.com/terms/s/safe-withdrawal-rate-swr-method.asp</p></li><li><p>https://mf.nipponindiaim.com/mutual-fund-articles/4-percent-rule</p></li><li><p>https://www.vanguardmexico.com/content/dam/intl/americas/documents/mexico/en/fuel-for-the-fire.pdf</p></li><li><p>https://www.wahealthplanfinder.org/us/en/my-account/savings-options/cascade-care-savings.html</p></li></ol><p></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading code-to-fire! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/p/fire-chapter-1-defining-the-basics/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.codetofire.com/p/fire-chapter-1-defining-the-basics/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Introductions]]></title><description><![CDATA[Starting something new can be intimidating, but remember, you&#8217;ve got this!]]></description><link>https://www.codetofire.com/p/introductions</link><guid isPermaLink="false">https://www.codetofire.com/p/introductions</guid><dc:creator><![CDATA[Nikhil Chandra]]></dc:creator><pubDate>Sun, 19 Jan 2025 10:09:56 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!HjsV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h2>Who am I?</h2><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!HjsV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!HjsV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 424w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 848w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!HjsV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png" width="722" height="406.125" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:722,&quot;bytes&quot;:5131607,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!HjsV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 424w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 848w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 1272w, https://substackcdn.com/image/fetch/$s_!HjsV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F21a51273-0bf5-4734-ab7e-4add260b92ff_2560x1440.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>I&#8217;m an engineering manager based in the Seattle area. I have worked over 10 years in FAANG. This blog is my platform to write about my thoughts, travels, experiences, and sometimes - personal finances.</p><p>Discovering financial independence through blogs like Mr. Money Mustache and Mad Fientist transformed my perspective in my late 20s. As a software developer, I realized the power of frugal living and aggressive investing could unlock extraordinary freedom. My goal shifted from working for a paycheck to pursuing work that genuinely inspires me, with the flexibility to take breaks and design a life driven by passion rather than financial necessity. <strong>My personal goal is to FatFIRE in the next 5 years (2030).</strong> </p><h2>The goal.</h2><p>To give you the full, unfiltered story so you can see exactly how I navigate my journey as an immigrant navigating life in the US while pursuing Financial Independence, Retire Early (FIRE).  No sugarcoating, just real, raw experiences that might just help someone else out there who's walking a similar path.</p><p>Subscribe to get full access to the newsletter and website. Never miss an update.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://www.codetofire.com/subscribe?"><span>Subscribe now</span></a></p><h2>Whats else?</h2><p>I&#8217;m a passionate PNW adventurer who loves exploring misty forests, alpine meadows, and rugged coastlines. Always on the hunt for breathtaking views and wilderness experiences. You&#8217;ll either find me curled up at home, reading articles about the FIRE movement, or out on the trails, hiking or camping somewhere in the beautiful Pacific Northwest.</p><h2>Need to get in touch?</h2><p>The best way to get in touch with me is to reply to one of my newsletters. I try to reply to every one, and it goes straight into my primary email.</p><p>My approach to content is simple: everything stays free and open. Unlike most newsletters that hide behind paywalls, I believe in accessibility. I trust my readers to support the work through voluntary donations. If you choose to contribute, your support means the world to me - but there's zero pressure. My goal is sharing valuable insights with everyone, regardless of their financial situation.</p><div><hr></div><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://www.codetofire.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading code-to-fire! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item></channel></rss>