In this blog, In-Period Forecasting and Period-End Forecasting based on constant EAC along with examples is explained. Before proceeding, please refer to the blog Forecasting in Commercial Project Management.
The following forecasting key figures are calculated in this blog:
- Estimate at Completion (EAC)
- Estimate to Complete (ETC)
Note: Key Figure values from all approved Change Requests will be considered and calculated as Plan Key Figure values. In this blog, Key Figure represents cost, revenue, and quantity based on resource type and forecast basis. Examples are focused on cost and quantity; however, revenue calculation is similar to cost except that commitments are not considered.
The following terms are used throughout this blog:
- Calculated ETC – The ETC that is displayed on the screen.
- Persisted ETC – The ETC that is saved in the backend BW cube.
Overview: What's the Difference?
Aspect | In-Period Forecasting | Period-End Forecasting |
Forecast Period ETC (first forecast ru) | Depends on Plan and Actual. | Always zero because the forecast period is considered complete. |
ETC for Period Immediately after Forecast Period (first forecast run) | Plan | If Actuals> Plan, ETC = 0; Else Total Plan (up to next period) – Total Actuals (up to Forecast Period). Adjustment will be carry forwarded to future periods. |
Forecast Period ETC (subsequent forecast runs) | Depends on Actual and ETC of last forecast run | Always zero because the forecast period is considered complete. |
Period immediately after the Forecast Period (subsequent forecast runs) | Existing ETC values are reduced only when excess actuals need to be adjusted. | Previous EAC and persisted ETC values determine the ETC. |
Revenue | Not applicable | Forecast for Revenue is also calculated. |
Calculation Logic
Let us consider a financial plan across multiple periods. The calculation for each period is done based on the following logic:
When Forecasting has NOT been executed before
Period | In-Period Forecasting | Period-End Forecasting |
| Before Forecast Period | Calculated ETC = 0 | Calculated ETC = 0 |
| Before Forecast Period | Persisted ETC = Actual | Persisted ETC = Actual |
| Forecast Period | Calculated ETC = 0 if Actual ≥ Plan; Calculated ETC = Plan − Actual if Plan > Actual. Excess actuals (if Actual > Plan) carry forwarded to future periods. | Calculated ETC = 0 |
| Forecast Period | Persisted ETC = Actual if Actual > Plan; Persisted ETC = Plan if Plan ≥ Actual. | Persisted ETC = Actual |
| Period Immediately after Forecast Period | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC = Plan. | If Total Plan (up to this period) – Total Actuals (up to Forecast Period) < 0, then ETC = 0 and this balance is carry forwarded to future periods. Else Calculated ETC will be equal to this balance. |
| Period Immediately after Forecast Period | Persisted ETC is same as Calculated ETC. | Persisted ETC is same as Calculated ETC. |
| Periods after Next Period of Forecast Period | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC = Plan. | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC = Plan. |
| Periods after Next Period of Forecast Period | Persisted ETC is same as Calculated ETC. | Persisted ETC is same as Calculated ETC. |
Note: Once Period-End Forecasting has been executed for a period, In-Period Forecasting can no longer be performed for that period. In-Period Forecasting will become available again when the next period opens.
When Forecasting HAS been executed before
Period | In-Period Forecasting | Period-End Forecasting |
| Before Forecast Period | Calculated ETC = 0 | Calculated ETC = 0 |
| Before Forecast Period | Persisted ETC = Actual | Persisted ETC = Actual |
| Forecast Period | Calculated ETC = 0 if Actual > Persisted ETC of last forecast run; else Calculated ETC = Persisted ETC of last forecast run – Actual. | Calculated ETC = 0 |
| Forecast Period | Persisted ETC = max(Persisted ETC of last forecast run, Actual) | Persisted ETC = Actual |
| Period Immediately after Forecast Period | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC will remain same as last forecast run. | If EAC (last forecast run) – Total Actuals (up to Forecast Period) – Persisted Total ETC (from Period after Next Period of Forecast Period to end of plan) < 0, Calculated ETC = 0 and this balance is carry forwarded to future periods. Else Calculated ETC will be equal to this balance. |
| Period Immediately after Forecast Period | Persisted ETC is same as the Calculated ETC. | Persisted ETC is same as the Calculated ETC. |
| Periods after Next Period of Forecast Period | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC will remain same as last forecast run. | If Excess Actuals are carry forwarded from previous periods, then the excess will be adjusted in ETC for future periods. Else Calculated ETC will remain same as last forecast run. |
| Periods after Next Period of Forecast Period | Persisted ETC is same as the Calculated ETC. | Persisted ETC is same as the Calculated ETC. |
EAC Formulas (applicable to both)
- EAC Quantity = Total ETC Quantity + Total Actual Quantity (up to Forecast Period).
- EAC Cost = Total ETC Cost + Total Actual Cost (up to Forecast Period) + Total Commitments (up to Forecast Period).
- EAC Revenue (Period-End only) = Total ETC Revenue + Total Actual Revenue (up to Forecast Period)
Note: For quantity-driven Resource Types: if Rate (Forecast) of the current period is null, Rate (Cost) of the current period is used as the Forecast Rate.
Example
Consider a Financial Plan with a monthly breakdown from January to June for Resource Type Activity with plan/forecast basis set to Quantity.
Planned and Actual Quantities:
| Month | Planned Quantity (H) | Actual Quantity Posted (H) | Rate (Cost) | Cost (Plan) (EUR) |
| January | 100 | 80 | 10 | 1000 |
| February | 200 | 0 | 10 | 2000 |
| March | 300 | 0 | 10 | 3000 |
| April | 400 | 0 | 10 | 4000 |
| May | 500 | 0 | 10 | 5000 |
| June | 600 | 0 | 10 | 6000 |
First Forecast Run — Forecast Period: January (Actual = 80H)
For January (Forecast Period):
Calculated ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | 20 (Plan 100 > Actual 80 → ETC = 100 – 80). No excess actuals are carry forwarded from Jan. | 0 (always 0 at period-end) |
Cost (EUR): ETC Quantity * Rate | 20 × 10 = 200 | 0 × 10 = 0 |
Persisted ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | 100 (Plan 100 > Actual 80) | 80 (Plan 100 < Actual 80) |
Cost (EUR): ETC Quantity * Rate | 100 × 10 = 1000 | 80 × 10 = 800 |
For February (Period Immediately Next to Forecast Period):
Calculated ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | 200 (Plan; No excess actuals carry forwarded from Jan). | Total Plan up to February = 100 (Jan) + 200 (Feb) = 300. Total Actual Quantity posted up to Forecast Period = 80 (Jan). As Actual (80) < Total Plan up to Feb (300), |
Cost (EUR): ETC Quantity * Rate | 200 × 10 = 2000 | 220 × 10 = 2200 |
Persisted ETC values for February will be same as Calculated ETC values.
For March to June (Periods after Next Period of Forecast Period):
Calculated ETC (March–Jun) | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | Plan (300, 400, 500, 600) | Plan (300, 400, 500, 600) |
Cost (EUR): ETC Quantity * Rate | Plan (3000, 4000, 5000, 6000) | Plan (3000, 4000, 5000, 6000) |
Persisted ETC for March to June is same as Calculated ETC values for March to June.
ETC and EAC Summary — First Run:
Calculation | In-Period Forecasting | Period-End Forecasting |
Total ETC Quantity | 20+200+300+400+500+600 = 2020 H | 0+220+300+400+500+600 = 2020 H |
Total Actual Quantity (upto Jan) | 80 H | 80 H |
EAC Quantity | 2020 + 80 = 2100 H | 2020 + 80 = 2100 H |
Total ETC Cost | 20200 EUR | 20200 EUR |
Total Actual Cost (upto Jan) | 800 EUR | 800 EUR |
Total Commitments | 0 | 0 |
EAC Cost | 20200 + 800 + 0 = 21000 EUR | 20200 + 800 + 0 = 21000 EUR |
Second Forecast Run — Same Forecast Period (January), Additional Actuals Posted (Actual = 150H)
Updated Data:
| Month | Planned Quantity (H) | Actual Quantity Posted (H) | Rate (Cost) | Cost (Plan) (EUR) |
| January | 100 | 150 | 10 | 1000 |
| February | 200 | 0 | 10 | 2000 |
| March | 300 | 0 | 10 | 3000 |
| April | 400 | 0 | 10 | 4000 |
| May | 500 | 0 | 10 | 5000 |
| June | 600 | 0 | 10 | 6000 |
For January (Forecast Period):
Calculated ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | 0 (Actual 150 > Persisted ETC of last forecast run 100). Excess = 150 – 100 = 50 to be carry forwarded to future periods. | 0 |
Cost (EUR): ETC Quantity * Rate | 0 | 0 |
Persisted ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | Persisted ETC of last forecast run – Actuals = 150 – 100 = 50 ETC Quantity = 150 (Actual 150 > Difference of Persisted ETC of last forecast run and Actuals) | 150 (Actual 150) |
Cost (EUR): ETC Quantity * Rate | 150 × 10 = 1500 | 150 × 10 = 1500 |
For February (Period Immediately Next to Forecast Period):
Calculated ETC | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | Excess carry-forward from Jan = 50. ETC Quantity = Persisted ETC of last forecast run for February (200) – Excess carry-forward from previous period (50) = 150. | EAC Quantity (last forecast run) = 2100. Total Actual Quantity (up to Jan) = 150. Total Persisted ETC Quantity (March to June) = 300 (Mar) + 400 (Apr) + 500 (May) + 600 (Jun) = 1800. EAC Quantity (last forecast run) – Total Actual Quantity (up to Forecast Period) – Total Persisted ETC Quantity (from Forecast Period to end of plan) = 2100 – 150 – 1800 = 150. Since balance is positive, ETC Quantity of February = 150. |
Cost (EUR): ETC Quantity * Rate | 150 × 10 = 1500 | 150 × 10 = 1500 |
Persisted ETC values for February will be same as Calculated ETC values.
For March to June:
Calculated ETC (March–Jun) | In-Period Forecasting | Period-End Forecasting |
Quantity (H) | Retained from last forecast run (300, 400, 500, 600) | Retained from last forecast run (300, 400, 500, 600) |
Cost (EUR): ETC Quantity * Rate | Retained from last forecast run (3000, 4000, 5000, 6000) | Retained from last forecast run (3000, 4000, 5000, 6000) |
Persisted ETC for March to June is same as Calculated ETC values for March to June.
ETC and EAC Summary — Second Run:
Calculation | In-Period Forecasting | Period-End Forecasting |
Total ETC Quantity | 0+150+300+400+500+600 = 1950 H | 0+150+300+400+500+600 = 1950 H |
Total Actual Quantity (upto Jan) | 150 H | 150 H |
EAC Quantity | 1950 + 150 = 2100 H | 2100 H |
Total ETC Cost | 19500 EUR | 19500 EUR |
Total Actual Cost (upto Jan) | 1500 EUR | 1500 EUR |
Total Commitments | 0 | 0 |
EAC Cost | 19500 + 1500 + 0 = 21000 EUR | 19500 + 1500 + 0 = 21000 EUR |
Note: Constant EAC forecasting ensures that changes in actual postings do not automatically increase or decrease the overall project estimate. Instead, the system adjusts the remaining Estimate to Complete (ETC) across the remaining project periods while keeping the EAC unchanged.
Source link
