How to Set Up Usage Based Revenue Recognition

Recognize revenue by percentage completion, milestones, units consumed, or work delivered

This guide is for finance teams whose revenue depends on milestones, units consumed, or percentage completion rather than calendar time. Set up a usage-based account once, then update it manually or sync it from a Google Sheet (or Microsoft Excel) each month — ScaleXP recognizes revenue across each invoice based on the usage data you supply rather than line item dates.

For the simpler “spread everything for this account the same way” pattern, set an account-level rule instead — see How to Set Rule Based Revenue Allocations. For an invoice line that mixes a fixed element with a time-based element, use a multi-tiered rule — see How to Set Up a Complex, Multi-Tiered Revenue Allocation Rule.


Step 1. Open the Usage Based Recognition rules

Open the rule editor from either the Customers tab or the Journals tab:

  • From the Customers tab — click the cog at the top right, then select Usage Based Recognition.
  • From the Journals tab — go to Update Usage Based Revenue.

You’ll land on the Configure Usage Based Recognition Rules screen.

Step 2. Choose your update method

Decide whether you want to update usage manually inside ScaleXP, or sync usage automatically from a Google Sheet or Microsoft Excel spreadsheet.

For the automatic sync setup, see How to Set Up Usage Based Data from Google Sheets and How to Set Up Usage-Based Data from Microsoft Excel.

Note that if you have more than one usage-based account, all of them must use the same update method — you can’t mix manual entry with Google Sheets sync across accounts.

Step 3. Select the GL account

Select the GL account you want to flag as a usage-based account. Every invoice posted to that account from this point forward will be recognized using the usage data you supply, rather than using ScaleXP’s default text-recognition AI.

Step 4. Add additional usage-based accounts, if needed

To add another usage-based account, click Add Usage Based Account and select the next GL account.

To remove a usage based rule (that is, return the account to standard revenue recognition rules), use the bin at the right of the account rule.


Remember from Step 2 — all usage-based accounts must use the same update method (all manual, or all sync).

Step 5. Remove a usage-based rule

To return an account to standard recognition, use the bin icon next to the rule on the Configure Usage Based Recognition Rules screen. ScaleXP will revert that account to default text-recognition AI from that month forward; historical postings stay as they were.

Step 6. You’re done — usage-based recognition is live

That’s it — every new invoice posted to your usage-based accounts now waits for the usage data you supply each month, rather than spreading by calendar time. Update the usage figures each month (manually, or by refreshing the Google Sheet / Excel sync) and ScaleXP recognizes the matching slice of each invoice.

For the ongoing month-end update flow, see How to Update Usage Based Revenue.

Worked example — fixed-fee project with milestone billing

A $40,000 fixed-fee project is invoiced upfront against a “Project Revenue” GL account. Revenue should recognize as project milestones close: 30% at design sign-off, 40% at build completion, 30% at go-live.

GL account: Project Revenue (flagged as usage-based in Step 3)

Update method: manual entry in ScaleXP

Month 1 usage entry: 30% (design sign-off) → ScaleXP recognizes $12,000

Month 3 usage entry: 70% cumulative (build complete) → ScaleXP recognizes an additional $16,000

Month 5 usage entry: 100% cumulative (go-live) → ScaleXP recognizes the remaining $12,000

The full $40,000 is recognized across the months in which work is actually delivered, regardless of when the invoice was raised.


How to Update Usage Based Revenue

How to Automate Revenue Recognition in ScaleXP