R Tutorial: Pro-Forma Income Statements

Learn to build a pro-forma income statement in R, from revenues through net income. The tutorial covers depreciation (a $50,000 truck depreciates $4,000 yearly over 10 years), how it shields taxes despite being non-cash, and why the course uses unlevered cash flows to separate project economics from financing.
Chapters
The revenues and expenses from our business model are inputs to the key financial line items found on an income statement. An income statement, sometimes called a profit and loss or P and L, translates revenues and expenses to net income. This process creates a projected or or pro forma income statement for our project. In this lesson, we will discuss the key calculations required. We previously calculated gross profit. We can get to operating income by subtracting operating expenses from gross profit. For project valuations, we don't need to consider SG&A expenses like administrative salaries. Instead, we will focus on depreciation and amortization. What is depreciation? Some projects require large capital expenditures, like buying a machine. Depreciation distributes the cost of large durable assets over their useful lifetime to match expense with use. For example, if a company purchases a new delivery truck, it will recognize depreciation during each period that the truck is used to generate revenue. There are many different methods of calculating depreciation and the choice is largely subjective. We will briefly look at one in detail. Amortization is a similar concept for non physical assets like patents or research and development. In straight line depreciation, the per period cost equals the net cost divided by the number of periods it will be used. The net cost is the original book value of the item minus its salvage value, where salvage value is the amount we can sell it for once we finish using it. As a numerical example, if we buy our truck for $50,000, plan to use it for 10 years and think it can be sold for $10,000 at the end of that period, we would depreciate it by 50,000 minus 10,000 all divided by 10 or $4,000 each year. Let's do this calculation in R. Here we use the depreciation formula to calculate depreciation per period, that is $4,000 per year, number we have already reached in our example. Why does depreciation matter? It reduces gross profit from operations and shrinks our taxable income, thus saving us taxes. However, this is distinct from our other operating costs because it is a non cash expense, that is, it's not something we're actually paying for each period. Valuations can be calculated as levered or unlevered. Levered valuations price in the impact of how you finance your project and include certain benefits like tax deductions from interest expenses. In a levered model, you would next define total income as operating income minus interest expense. Unlevered valuations ignore financial decisions for this course. We use unlevered cash flows to focus solely on our project's economics and how it could contribute to a company's overall value, regardless of specific financing decisions. Our next step is to calculate tax. This is very simple, just operating or total income times the tax rate. Of course, in the real world, determining the right tax rate is in itself quite complex. Here we will simply use 21%, the stated 2018 federal corporate tax rate in the United States. After we know how much we will pay in tax, we simply calculate net income as total income minus tax. You might suspect that net income is is where the story ends. After all, doesn't this tell us what we made? Not quite, but stay tuned for more on this after a few practice exercises. Just one technical note before we proceed. For ease of coding, we may collapse all expenses into one line item in some exercises, but remember, there are different types that interact differently with gross profit, operating profit, or.
More from Richie

#359 My Best Friend is AI with Valerie Tiberius, Professor of Philosophy at University of Minnesota

How AI Agents Will Work While You Sleep | Ruslan Salakhutdinov, Professor at Carnegie Mellon

#358 How AI Agents Will Work While You Sleep | Ruslan Salakhutdinov, Professor at Carnegie Mellon







