Allocation overview

Last updated: October 27, 2026

Span gives you several ways to see where engineering effort goes. Some use AI to classify work, and others use rules or classifications your team controls. This page explains which is which.

Why it matters

Each allocation view answers a different question and decides categories in a different way. Knowing which one you're looking at tells you how a result was produced and how to fix it if it looks wrong. All of them measure effort in the same unit, the FTE-day, so their totals reconcile.

View

How categories are decided

How to correct a result

Inferred investment

AI sorts each pull request and issue into New features, Maintenance, or Developer experience

Reassign the pull request or issue to another category

Labeled investment

Rules your admins write on Jira fields

Edit the rules

Workstreams

AI groups related work, with optional mapping to your project list

Rename, merge, or map workstreams to projects

Cost capitalization (Dev FinOps)

Your team classifies epics, initiatives, issues, or workstreams, in Span or through a synced Jira field

Change the status in Span, or the Jira field

How it works

FTE-days, the shared unit. Span measures effort from activity: commits, merged pull requests, reviews, and issues In Progress. Each person's active day is worth 1.0 FTE-day, split across the work they touched. Nobody fills in a timesheet. If an admin enters salaries, Span also converts FTE-days to cost. See FTE & FTE-d Calculation.

Inferred investment (formerly AI Investment Mix)

  • AI-based. Span reads each pull request and issue and tags it with up to three traits, such as bugfix, refactor, or security. Fixed rules turn those traits into New features, Maintenance, or Developer experience.

  • Admins with the Manage Investment permission can reassign any pull request or issue to a different category. The change shows in reports within 24 hours.

  • Reassignments here don't change Labeled investment.

Labeled investment

  • Rule-based. Your admins create investment areas and categories, such as "Roadmap" or "Keep the lights on," and write rules that match Jira fields.

  • Rules can check issue, epic, and initiative fields (IDs, titles, types, priority, project, labels, and custom fields). The first matching category wins. The same fields always produce the same category.

  • Jira only. Jira Components aren't a rule field.

  • Rules here don't change Inferred investment.

Workstreams

  • AI-based. Once a week, Span groups related epics, issues, and pull requests into named workstreams.

  • Admins with the Manage Investment permission can click Refine on the Workstreams page to map workstreams to your own project list. No extra setup from Span is needed.

Cost capitalization

  • Lives under Dev FinOps, next to R&D tax credits and R&D grant treatment.

  • Effort rolls up to the container you choose: Jira epics, Jira initiatives, all Jira issues, or AI workstreams (raw, or refined into your projects).

  • Your team marks each container Capitalized or Uncapitalized in Span, or Span reads the status from a Jira field you map.

  • With refined workstreams, you can have managers review and approve each person's effort every cycle instead of using Span's inferred effort.

Setup

  • Choose which views appear: Settings → Investment → Choose Your Investment Views. Turn Labeled Investment, Inferred Investment, and Workstreams on or off, and pick the default view.

  • Labeled investment: Settings → Investment, then Add Area under Investment Mix Areas. See Setting Up Labeled Investment in Span.

  • Workstream mapping: Insights → Allocation → Workstreams → Refine. See Allocation Guide: Refining Your Workstreams.

  • Cost capitalization, including workstream-based classification and manager approval: Settings → DevFinOps. See Introduction to Cost Capitalization.

  • Cost estimates: Settings → Investment → Cost Estimates. An admin enters a default salary and salaries by job level or job title.

Things to know

  • The views are independent. You can turn on several at once. A rule or reassignment in one never changes a result in another.

  • Inferred categories are fixed. New features, Maintenance, and Developer experience can't be renamed. For your own categories, use Labeled investment or map workstreams to projects.

  • Work with no linked issue shows separately. Labeled investment and cost capitalization can't classify a pull request with no issue, so it appears as Unlinked. Workstreams place it when they can.

  • Labeled investment and the Jira-based cost capitalization modes need Jira. With Linear or another tracker, use Inferred investment and Workstreams.

  • Labeled investment updates within about 5 hours. Span syncs Jira about every 2 hours and applies your rules to each issue it syncs. Reports update in the next processing run, which happens about every 3 hours, so a change in Jira shows within about 5 hours. A change to your rules shows after the next processing run.

Worked example

An engineer merges a bug-fix pull request linked to issue PAY-12 on Monday and does nothing else that day. That's 1.0 FTE-day on PAY-12. Inferred investment counts it as Maintenance because of its bugfix trait. Labeled investment puts it in "Roadmap" if PAY-12's epic matches your Roadmap rule. Workstreams adds it to whichever workstream holds PAY-12. Cost capitalization counts it as capitalized if PAY-12's epic is marked Capitalized. The same 1.0 FTE-day appears once in each view.

Related articles

How is work classified in the Labeled Investment report?

Setting Up Labeled Investment in Span

How does Span define allocation categories like new features and maintenance work?

Workstreams: AI-Powered Allocation

Introduction to Cost Capitalization

Need help?

Contact your Span account team or reach out to support@span.app.