The quick answer
In NetSuite Planning and Budgeting (NSPB), open the Forecast card, then Sales / COGS, and go to Sales Revenue by Customer. Each row has a Method that decides how its open months are forecast, and an Adj (%) that raises or lowers the result. Click the row's Method cell, pick a method such as 3Mo Rolling from Entries, type the adjustment and click Save. In the example, August becomes the average of May, June and July (5,100) plus 10%, which is 5,610. Driver methods then carry that change forward: a service set to % of Product Rev follows product revenue, and forecast COGS follows each item's gross-margin assumption on Item Gross Margin.
The screenshots show sample data. The person, company, customer and item names are fictional.
Before you start
NSPB is a separate Oracle EPM planning application that integrates with NetSuite. NetSuite actuals are loaded into it for planning and comparison. A forecast you enter in NSPB doesn't create NetSuite transactions or GL postings.
NSPB forms are delivered with the application and can be configured per implementation. Form names, the Point of View members, the list of methods and how calculations run can all differ in your application. The screenshots follow one configured application. Oracle's documentation describes the delivered path as the Revenue and Gross Margin card with forms such as Revenue by Customer and Trend Based Item Gross Margin, so expect different labels in yours. You also need a role that can open these cards and edit the forecast forms, and the NetSuite actuals need to have been loaded.
In this example, a financial analyst at Keel & Compass Supply is updating the mid-year forecast for one customer, Alder Health Partners. January to July are actuals. August onward is forecast. Where your actuals stop depends on your application's period setup and the data loaded.
01. Open the customer revenue forecast
On the NSPB home page, click the Forecast card. It opens its clusters: Sales / COGS, OpEx and Working Capital. Click Sales / COGS.
Sales Revenue by Customer opens. The row of links above the title lists the other forms in this tab, and the icons down the left side are vertical tabs for other groups of forms. The Point of View above the grid sets the slice you're editing: Subsidiary US East, Currency USD, Relationship Alder Health Partners and Class Wholesale. Your forms may show other dimensions here, such as Version, Customer Category or Item.
In this example every product row reads 12Mo Rolling. Find Label Printer LX2. Its May, June and July actuals are 4,800, 5,100 and 5,400, and its August forecast is 4,433. In these screenshots the shaded months are actuals, shown for reference.
02. Switch the product to a 3-month rolling average
Click the Method cell for Label Printer LX2. The Entries list opens with the methods this application offers for revenue: Manual, 3Mo Rolling, 6Mo Rolling, 9Mo Rolling, 12Mo Rolling and Prior Yr Actuals. Choose 3Mo Rolling.
In Adj (%) on the same row, enter 10. This form shows it as 10%. Both edited cells turn yellow until you save. Check how your forms expect the adjustment before you type it. Oracle's documentation for the delivered trend-based forms uses decimals, 0.01 for a 1% increase, so 10% there would be 0.10. An adjustment on a Manual row isn't applied. For a Manual row, type the forecast into the open months yourself.
Click Save. In the application shown, saving recalculates the form:
- Aug becomes 5,610. The average of May, June and July is (4,800 + 5,100 + 5,400) ÷ 3 = 5,100, and 5,100 × 1.10 = 5,610.
- Sep becomes 5,720 and Oct 5,757. Each later month averages the three months before it, and for earlier forecast months it uses the value before the 10% was added. September averages Jun 5,100, Jul 5,400 and August's 5,100, which is 5,200, and 5,200 × 1.10 = 5,720. October averages 5,400, 5,100 and 5,200, which is 5,233.33, and 5,233.33 × 1.10 = 5,757 after rounding. So the 10% lands once on each month rather than stacking.
- The row's FY26 Total goes from 54,921 to 60,957, and the Product total for August goes from 22,140 to 23,317.
03. Forecast a service from product revenue
Click the Services vertical tab, the second icon on the left. Sales Services opens for the same customer, with Account 4210 - Revenue - Services in its Point of View. The grey Product Revenue row at the top is the customer's total product revenue, and it already includes the forecast you just saved: August reads 23,317. The service rows below it have no method yet and no forecast after July.
Click the Method cell for Onsite Training and choose % of Product Rev from Entries. This list is different from the revenue one: Manual, 3Mo Rolling, 6Mo Rolling, 12Mo Rolling and % of Product Rev. Whether % of Product Rev exists depends on how your application is configured.
Enter 8 in Adj (%) and click Save. With this method, this form uses Adj (%) as the share of product revenue, and it takes 8 for 8%. Check the method's definition and input format in your application. Each forecast month becomes 8% of that month's Product Revenue. August is 8% of 23,317, which is 1,865, and September is 8% of 23,499, which is 1,880. Onsite Training's FY26 total becomes 13,411. If product revenue changes later, this row follows it without re-keying.
04. Change the gross-margin assumption
Click the Cost of Goods Sold vertical tab, the third icon. Item Gross Margin opens. Each item has a GM% Trend that decides its forecast gross-margin percentage, next to its actual GM% for last year (FY25 Total) and this year to date (FY26 Total). Label Printer LX2 made 36.50% last year and 41.20% so far this year. Under YTD Actual GM%, every forecast month uses 41.20%.
Click the GM% Trend cell for Label Printer LX2 and choose Prior Year GM% from Entries. The other choices are YTD Actual GM% and Manual. You can only type GM% values into the forecast months on a Manual row. On a trend row, the trend calculates them. Click Save. Every forecast month for the item changes to 36.50%, last year's margin. The other items stay on YTD Actual GM%.
05. Check the forecast COGS
Click COGS Expense in the row of links above the title. In this application the form is calculated rather than entered, and it has no Save button. Its forecast COGS is forecast revenue × (1 − GM%).
For Label Printer LX2, August COGS is 3,562: 5,610 × (1 − 36.50%) = 5,610 × 63.50% = 3,562. September is 5,720 × 63.50% = 3,632. The item's FY26 total is 37,183, which is 19,081 of actual COGS for January to July plus 18,102 forecast for August to December.
Check the result
- Label Printer LX2 Aug revenue is 5,610: the May to July average of 5,100, plus 10%.
- Product Revenue on Sales Services reads Aug 23,317, the new product total.
- Onsite Training Aug is 1,865, which is 8% of 23,317.
- Label Printer LX2 forecast GM% is 36.50% on Item Gross Margin.
- Label Printer LX2 Aug COGS is 3,562, which is 5,610 × 63.50%.
In the application shown, each form recalculated when it was saved, and COGS Expense already reflected the new revenue and margin. Oracle's documentation for the delivered forms adds separate steps: Launch COGS for all Customers from the grid's actions to recalculate COGS, then Aggregate to Income Statement to roll the numbers up, and optionally a financial-statement refresh for reporting-currency results. If your COGS or income statement still shows old numbers after you save, run those in order.
Common questions
What does 3Mo Rolling mean in an NSPB forecast form?
It forecasts each open month from the average of the three months before it, actuals first and then earlier forecast months. For Label Printer LX2, May, June and July were 4,800, 5,100 and 5,400, so August's base is 5,100 before any adjustment. 6Mo, 9Mo and 12Mo Rolling work the same way over a longer window, so they react more slowly to a recent trend.
How does Adj (%) work, and do I enter 10 or 0.10?
Adj (%) raises or lowers whatever the row's method produces. In the example, 10 turned the 5,100 rolling average into 5,610. The form shown takes 10 and displays 10%, but Oracle's delivered trend forms expect decimals, so check your form before you type. Adj (%) does nothing on a Manual row.
Can NSPB forecast services as a percentage of product revenue?
In the application shown, yes. Set the service row's method to % of Product Rev and enter the share, and each forecast month becomes that share of the customer's product revenue. Onsite Training at 8% of 23,317 comes out at 1,865 for August. This method may not exist in your application unless it was configured, so check the method list on your services form.
How does gross margin drive COGS in NSPB?
The item's GM% Trend sets the margin used for each forecast month, and forecast COGS is forecast revenue × (1 − GM%). Switching Label Printer LX2 from 41.20% to its prior-year 36.50% makes the COGS rate 63.50%, so August's 5,610 of revenue carries 3,562 of COGS. The revenue forecast doesn't change.
Why didn't my NSPB income statement update after I saved a forecast form?
Saving updates the form you edited, but downstream forms may wait for a rule. In the delivered process that's Launch COGS for all Customers, then Aggregate to Income Statement, and optionally a financial-statement refresh for reporting currency. Rule names vary by implementation, so ask whoever set up your application which ones to run.
Does entering a forecast in NSPB create transactions in NetSuite?
No. NSPB forecasts are planning data. They don't create sales orders, invoices, journal entries or any other NetSuite transaction, and nothing posts to the general ledger.
How do NetSuite actuals get into NSPB?
Through your application's integration with NetSuite, which loads actuals on its own schedule with its own mappings. If actuals look missing, check the Point of View first, then whether the latest data load has finished.
When should I use the Manual method?
When you have a specific number in mind that a formula won't produce, like a signed deal or a known price change. On a Manual row you type the forecast into the open months yourself, and Adj (%) isn't applied.