Productive lets you choose how and when revenue from fixed billing type services is recognized. This is set at the organization level in Settings > Revenue recognition and applies to all budgets by default.
In contrast, Time and Materials services always recognize revenue at the moment time entries and expenses are logged and approved, and when future bookings are made.
There are two org-level options:
Recognizing all revenue on a single date
Spreading revenue over time as time entries, expenses, and bookings are made
Revenue Recognized on a Single Date
With this option, all revenue stays linked to the service and is recognized on a single date you select.
For open budgets, you can choose from:
Budget start date
Budget end date with start date fallback — if no end date is set, the budget start date is used
Budget end date with no recognition fallback — if no end date is set, revenue is not recognized while the budget is open
Do not recognize revenue while the budget is open
For delivered budgets, you can choose from:
Budget start date
Delivery date
Budget end date with delivery date fallback — if no end date is set, the delivery date is used
Budget end date with start date fallback — if no end date is set, the budget start date is used
Example (click here)
Example (click here)
In this example, revenue recognition is set to recognize revenue on the budget start date for open budgets and on the delivery date for delivered budgets.
Consider a budget with a total of 40 hours at €100/hour:
10 hours logged
20 hours scheduled in the Resource Planner
10 hours remaining
Budget start date: May 1
In the Financial Items report, all revenue remains on the service (shown as Service), despite hours being logged and scheduled. The recognition date is May 1. Delivering the budget switches the recognition date to the delivery date, but all revenue stays tied to the service.
Revenue Spread Across Time
With this option, revenue is gradually recognized as you log time, expenses, and create bookings in the Resource Planner. Any remaining revenue is marked as unrecognized and treated as surplus.
For open budgets, you can control how the surplus is handled:
Budget start date
Do not recognize surplus while the budget is open
Budget end date with start date fallback — if no end date is set, the start date is used
Budget end date with no recognition fallback — if no end date is set, surplus is not recognized while the budget is open
For delivered budgets:
Budget start date
Delivery date
Budget end date with delivery date fallback — if no end date is set, the delivery date is used
Budget end date with start date fallback — if no end date is set, the start date is used
Example (click here)
Example (click here)
In this example, revenue is set to be distributed over time, with surplus revenue recognized on the budget start date while the budget is open.
Consider a budget with a total of 40 hours at €100/hour:
10 hours logged and recognized in May
20 hours scheduled and recognized in June
10 hours remaining
Budget start date: May 1
Revenue from the service spreads across time entries and future bookings as they occur (shown as Time entry and Booking in the Financial Items report). With 10 hours unaccounted for, there is a surplus of €1,000 remaining on the service.
Due to the revenue recognition settings, this surplus is recognized on the budget start date. When the budget is delivered, the recognition date for the surplus switches to the budget end date if defined — otherwise it reverts to the budget start date.
Custom Revenue Recognition
In addition to the org-level settings above, you can override revenue recognition on individual budgets. Custom revenue recognition lets you distribute fixed price revenue across even or manually defined periods, independent of time tracking activity.
👉 Learn more in Custom Revenue Recognition for Fixed Price Budgets.
YouTube Video
Watch our Office Hours webinar for a detailed explanation of how revenue recognition works.







