Skip to main content

Changelog

Follow new updates and improvements to Operating.

Dark mode, time-gated sites, long-term leave, tables your way

Dark mode is here

You can now choose Light, Dark or System in your user preferences. If you're used to Operating in light mode, nothing changes unless you want it to, because existing users stay on Light by default. If your computer is set to dark, Operating asks you once how you'd like it.

Site assignments are time-gated

As promised last time, a person's site now has a history, just like roles and seniorities. When someone moves from one office to another, the calculations follow the site they were actually on for each date. That covers working hours, public holidays, cost cards, rates and cost capping. Reports that filter or group by site use the site in effect during the period, so last quarter's utilization by site stays last quarter's. Still coming up: time-gating person-to-company assignments.

You manage the history on the person page, the same way as roles. If you sync people from HiBob with site import on, HiBob's work history is now the source of truth for site history. One heads-up: for people who have changed sites, historical hours and costs may shift to where they should have been all along.

Long-term leave, and time off that respects capacity

  • You can mark a time off category as long-term leave, such as parental leave or a sabbatical. A confirmed allocation to it then takes the person out of capacity for that period.

  • Capacity and availability reports no longer count people on long-term leave as available.

  • You can set a default time off category in time tracking settings.

  • HiBob users can map HiBob leave types to their own time off categories.

  • Who can see what kind of time off someone has now follows your time off permission everywhere: allocations, Planned vs Actuals, exports and MCP.

Tables your way

You can resize columns and drag them into the order you like, and Operating remembers the order. Wide tables now scroll sideways instead of squeezing everything onto the screen.

Leaving Harvest just got easier

Harvest's price increase has more teams looking for the exit, so we've smoothed the path:

  • Full-history import. You can now reliably bring over all your history, not just recent data.

  • Time off categories. Harvest's Absences tasks now arrive as Operating time off categories.

  • The Timer. The “I started on this particular task, keep track until I say I’m done”. The natural companion feature this is, of course, the rounding-up of time entries.

  • Reports fix. Imported entries missing from reports have been fixed.

  • Improved Expense handling. Marking individual expenses as invoiced, for example.

Coming in the next release, the import will also bring over positions from project assignments, budgets, fixed-fee projects as fixed price, task rates and archived state. This will be on by default for new Harvest connections and available as a toggle for existing ones. If you know a team stuck on Harvest, send them our way.

HiBob: upcoming hires and skill levels

For teams using the API and MCP

  • Site history endpoint. There's a new /person-site-assignments resource. The siteId field on people still works but is deprecated. Setting siteId through REST replaces the person's whole site history with a single period, so please move integrations to the new resource.

  • Faster bulk changes. Bulk time entry and individual working hours changes are much faster, because financial recalculation now runs in the background instead of blocking each request.

  • MCP updates. manage_person can now manage site assignments, and get_project now marks archived task assignments.

Also shipped

  • Time entry lists can show and group by the "Reports as" task, so granular project-specific tasks roll up to your shared ones.

  • The person overview now shows which client someone is working on.

  • The planned expenses export can be filtered by project status.

  • The timesheet planned total now shows over-allocation, such as "80:00 h of 40:00 h", instead of capping at 100%.

  • Hours on the project detail page are no longer rounded. I’m sorry we rounded them earlier.

Fixed

Approvals. Approvers who saw a pending count but an empty list now see their entries. New organizations with approvals enabled let admins approve any time entry by default.

Invoicing. Fixed-price invoice totals no longer drop to zero after editing the attached time entries. A credited invoice's CSV export includes its time entries again. Invoices no longer show as "ready for invoicing" while their entries are unapproved.

Hours. Typing 1,999 now shows 2:00 rather than 1:60, and the extra whitespace under the timesheet is gone.

Lists and reports. Grouped hour totals are back in time entry lists and the Active Projects report. People and Projects report rows expand reliably. Planned vs Actuals change arrows are correct, and the "% of budget spent" column fills in without extra columns.

Timeline. Tooltips are no longer cut off, pinned labels no longer jump, and the working-hours clock icon no longer overlaps the percentage.

Other. Converting a shared task to project-specific now works properly. Renaming a HubSpot deal now updates the project name. CSV import rejects currencies that aren't in your settings.

Still in flight

  • Retainers. Recurring budget schedules and retainer revenue recognition are built, and invoicing comes next. Early access is available if you'd like to try it.

  • Billing and projects. Multiple billing types within one project, custom project statuses, and statuses for positions and allocations are in progress. So are organization-wide defaults for new projects, covering the default rate card with per-site overrides, owners and task list. Super exciting stuff.

  • Time off and allocations. Allocations will carry tasks, with planned hours shown per task row on the timesheet. Timesheets will also prefill from confirmed time off, if you so wish.

  • Also coming. Working patterns, an expense detail page, and the accounting integration platform for QuickBooks and Xero.

Questions? The in-app chat and support@operating.app are always open.

If you read this far, thank you. A human wrote this. Check out our newest customer stories from the US.

New brand, time-gated seniorities, choosing what to keep

Bye bye, Directory

The Directory is gone. Everything it did now lives in the entity lists: Clients, Views, Users, Holiday calendars and Rate cards all got proper lists, plus a selection bar with bulk actions across People, Projects, Clients and Users.

Role & Seniority time-gating

Roles and seniorities are now time-gated, so historical cost and invoicing stay accurate when someone's role or seniority changes instead of being retroactively rewritten. When you’re giving someone a promotion, this is what you’ll see: potential changes to bill rates are listed:

Time-gating of Site assignments are next to be released.

"Keep hours" / "keep allocation percentage"

When you swap the person on a position, you now choose what stays fixed: total hours, or allocation percentage. Previously the behaviour was implicit and often wrong for whoever was doing the swap.

Rebranded operating.app

The new website is now live. Our old brand served us well when we had not exactly decided know who our ideal customers are. We're now proud to be in the mature PSA product category: Operating is a lightweight PSA focused on technical, "high-stakes high-rates" consulting. We’re currently rolling out the new branding everywhere, including the login screens.


Also shipped

Position Groups — Groups on the position panel and team-tab cards, the candidate filter seeded from the position's group, MCP and API exposure, CSV export & columns, in-place edit on the project detail page, a timeline add-position shortcut, and a group match tier in Choose Person.

CRM filtering, rebuilt — a shared filter evaluator now backs HubSpot, Pipedrive and Salesforce.

Export functionality for Projects and People reports — continue the analysis in a spreadsheet.

Financials and invoicing — rate cards can be renamed while in use, and project-specific cards edited until an invoice exists. Expenses gained an invoiced flag and an attachment fix, and the time tracking timer shipped (still in beta testing, more on that in a future changelog). QuickBooks and Xero integrations are making rapid progress – would you like to take them into use? We can do that in exchange for testing help & candid feedback.

Still in flight

Tasks for allocations (define what kind of time off a longer block is), Allocation statuses, a shared in-place edit component, official Salesforce AppExchange listing, SSO self-service infrastructure, retainer as a billing type (recurring budgets first), HiBob skill-level import and the workforce-planning integration...


Are your friends on Harvest? Should they be worried about the price increase?

Lauri explains the situation in YouTube. Might be worth giving folks a heads-up.

That’s all for now. Check out the new website if you feel like it.

Time-gated fx rates, Cost capping, more Exports, Flex graph

Hi everyone,

It's been a busy Summer for us. We've shipped a major upgrade to how Operating handles cost and currency, released a much-requested cost-capping feature, and cleared out a long list of fixes and smaller improvements. Here's what's new.


Cost capping is here

You can now cap a person's cost to the hours they're actually contracted to work. If someone logs a 12-hour day, their cost no longer balloons past what they're really paid for — Operating caps it to their working hours and attributes the cost sensibly across their projects.

You control how it works, per site:

  • Cap by day, week, or month — whichever matches how you think about capacity.

  • Choose how capped cost is attributed — spread proportionally across the day's entries, or prioritise billable work first.

When capping is on, time-entry lists show a dedicated capped-hours column so you can always see where a cost came from. Cost rates and revenue recognition both respect the cap automatically.

This is live for everyone now — but you have to enable it under Settings → Organization → Site. For the full details on how caps and attribution are calculated, see How cost capping works.


Faster, more accurate financial reporting, time-gated fx rates

We've rebuilt how Operating handles currency under the hood, and you'll feel it in your reports.

Previously, Operating converted currencies on the fly every time you opened a report, using a single exchange rate. Now, amounts are stored in both the project's currency and your organisation's default currency, using the exchange rate that applied at the time — so historical numbers stay correct even as exchange rates fluctuate, and reports load faster.

A few things this unlocks:

  • A currency selector on reports. If your organisation works in more than one currency, you can now switch a report between your default currency and the project's own currency.

  • Historically accurate figures. Change or correct an exchange rate and your past numbers reflect the rate that was actually in effect — no more retroactive drift.

  • Costs shown in their original currency in planned and actual expense lists, while totals still roll up cleanly into the project currency.


Export Planned vs Actuals to CSV

The Planned vs Actuals report — for both projects and people — now has a CSV export, including optional person, project, and task breakdowns. Pull the exact view you're looking at straight into a spreadsheet for your own analysis. This brings PvA in line with the portfolio and capacity reports, which already supported export.


Smarter forecasting

Forecasting in reports now calculates progress based on absolute completion — each period's completion is measured as cumulative forecasted cost against the project's total forecasted cost, relative to your chosen cutoff date. The result is a forecast that behaves more predictably as projects move through their lifecycle. Not sure which method fits your project? How to choose a fixed-price forecast method walks through the options.


Time balance (flex time) makes much more sense now

We fixed a calculation issue where the Time Balance popover's breakdown rows didn't add up to the balance shown beneath them — a cached balance stamp was being double-counted in some cases, so the figures now reconcile exactly. We’re reaching out to everyone affected by this.

We also moved balance recalculation onto a background job, so when someone logs hours against a future date, their balance updates automatically once that date arrives rather than lagging behind. The new visualization is pretty cool way to see how much you’ve worked over time:

Find this graph by clicking on anyone’s time balance pill – for example your own, on top of the Hours UI. Please note that following Time Balance needs to be enabled for your organization in order to see it.


For teams using the API

  • Pagination on reporting endpoints. Reporting APIs now support pagination for more reliable, scalable data pulls.

  • New currency endpoints. You can now read your currencies and manage exchange rates directly over the REST API.

  • Historical imports made easier. You can now create time entries against archived positions via the API, so backfilling past data no longer trips over archived records.


Also fixed & improved

  • Part-time indicator cleaned up — the clock icon now only appears for people who are currently on individual working hours, not those who were in the past.

  • Un-archive project tasks directly from the project edit dialog.

  • Un-invoice time entries — If a time entry was manually marked as invoiced by mistake, you can now undo it. Select the entries in the multi-edit dialog and clear the invoiced status — no need to contact us to correct it for you.

  • Revenue recognition correctness — several fixes so tentative fixed-price projects, exchange-rate changes, and edge-case time entries all report revenue accurately. For a refresher on how revenue is earned, forecasted, and corrected (including negative corrections), see How Operating calculates earned and forecasted revenue.

  • Reporting fixes — Planned vs Actuals now sorts and displays planned hours correctly across all views.

  • UI polish — corrected off-screen selectors when reporting hours, tab layouts on projects with many positions, timeline labels, and various alignment and spacing issues across reporting screens.


Slight changes in fonts and colors ahead of our new look

  • Expect small changes in the way the app looks and feels this week and before September. The extent of changes for now is such that you don’t need to worry about your user instructions (or our support site, for that matter) to get outdated.

  • We’re rolling out a proper rebrand in September, can’t wait to show it to you!

Earlier updates