LogoLogo
Book a demoLog in
  • Swarmia documentation
  • Getting started
    • Get started in 15 minutes
    • Integrations
      • GitHub
        • GitHub Enterprise Server
        • Multiple GitHub organizations
        • Forked repositories
        • Troubleshooting
          • Reinstalling the Swarmia GitHub app
          • Updating app permissions
          • Installing Swarmia outside of GitHub Marketplace
      • Jira
        • Jira Server and Jira Data Center
        • Multiple Jira organizations
        • Limiting Jira project access
      • Linear
        • Private Linear teams
        • Disconnect Linear
      • Slack
        • Private Slack channels
      • Authentication
        • Google Single Sign-On
          • Frequently asked questions
        • Okta Single Sign-On
      • HR systems
      • Data export
        • Data cloud
        • Export data as a CSV file
      • Other integrations
        • Other issue tracker integrations
        • Other source code hosting integrations
  • Configurations for data quality
    • Teams & members
      • Creating & managing teams
        • Teams API
      • Contributors
      • Roles and permissions
      • Inviting team members
    • Issue tracker configuration
      • Jira configuration
      • Jira best practices
      • Linear configuration
    • Pull request exclusions
    • Linking pull requests to issues
    • Investment categories
    • Deployments
      • Generate deployments from merged pull requests
      • Generate deployments from GitHub deployments
      • Generate deployments from GitHub checks
      • Generate deployments via the API
        • Generate deployments for monorepos via the API
    • Sprint configuration
  • Use cases
    • Improve pull request flow
      • Pull request insights
      • Reducing pull request cycle time
      • Review code faster
      • Managing pull requests in progress with the Pull Request view
      • Diagnosing low pull request throughput
      • Analyzing pull request batch size
  • Improve your team's focus
    • Optimizing issue cycle time
    • Analyzing activity patterns on Work Log
    • Grouping activity on the Work Log view
    • Focus summary
  • Balance engineering investments
    • Activity and effort-based models
    • Categorizing work
    • Common problems with balancing engineering investment
  • Deliver strategic initiatives
    • Forecasting initiatives
  • Capitalize software development costs
  • Run developer experience surveys
    • Creating a survey
    • Managing surveys
    • Viewing and sharing survey results
    • How we show your survey responses
    • Survey communication guide and templates
  • Track DORA metrics
    • Automatic change failure detection
    • How Swarmia links PRs to deployments
  • Coach software developers
  • Get visibility into your CI pipeline
  • Continuous improvement
    • Working agreements
  • Notifications
    • Team notifications
    • Personal notifications
  • Notes
  • Retrospectives with Swarmia
  • Metrics & definitions
    • Pull request cycle time
      • What's the difference between "Change lead time" and "Pull request cycle time" metrics in Swarmia?
    • Issue cycle time
      • Defining issue lifecycle and cycle time
    • Developer effort (FTEs)
  • DORA metrics
    • Change lead time
    • Deployment frequency
    • Mean time to recovery
    • Change failure rate
  • Throughput
  • Time to deploy
  • Batch size
  • Flow efficiency
  • Scope creep
  • Sprints
  • GitHub Copilot metrics
  • Frequently asked questions
    • How do you treat weekends in metrics?
    • Tracking squashed commits
    • How do merge queues affect my metrics?
    • Why is my commit not visible in Swarmia?
    • How do I account for people leaving my organization?
  • Resources
    • Security & data retention
      • Data security
      • Data access
      • Swarmia IP Addresses
      • Single Sign-On (SSO) / SAML
      • Can I get a copy of the SOC 2 Type II audit report?
      • Deleting your organization
  • Pricing & plans
    • Compare plans
    • Free plan
    • Do I need a credit card to start a free trial?
    • What are the differences between the individual modules and the standard plan?
    • How do you determine the number of developers for billing?
    • What happens to customers with the Lite plan after the December 2024 pricing and plan change?
  • Changelog
On this page
  • Using Swarmia
  • Setting up your categorization
  • Reviewing your capitalizable work
  • Building reports
  • Frequently asked questions

Was this helpful?

Capitalize software development costs

Use developer activity data from Swarmia to generate capitalization reports and blend with cost data.

PreviousForecasting initiativesNextRun developer experience surveys

Last updated 2 days ago

Was this helpful?

Accounting and engineering rarely meet, but in modern software development organizations, that sometimes becomes a must. When software development costs are treated as long-term assets, it's essential to accurately connect effort with specific projects.

Swarmia helps organizations track and report on capitalizable software development costs with precision:

  • We connect data from your Git and issue tracker to accurately understand how developers allocate their time. Data accuracy is ensured because your developers regularly view and verify their activity in Swarmia.

  • You can define custom rules to match what work qualifies as capitalizable

  • Your finance team can export monthly or yearly software capitalization reports

Using Swarmia

Swarmia automatically generates monthly reports based on developer activity, issue hierarchy, and capitalization rules. You can manually generate data and override the previous snapshot for the given month.

This feature is only available for admin users.

Setting up your categorization

Software capitalization reporting can be configured by categorizing issues manually or setting issue filters to categorize them automatically. You may even use a combination of these.

Manual categorization

Manual categorization works well if you capitalize a small number of large projects annually. These projects are easily identified in the work tab and marked "Capitalizable." When you categorize issues manually, you'll see a small hand icon next to the category.

Automatic categorization

Automatic categorization works best if you already have clear categories in your issue tracker and want to transfer them to Swarmia. On the setup tab, you'll find a section called "Rules for software capitalization," where you can configure filters to identify capitalizable work.

Reviewing your capitalizable work

Swarmia gives you two different ways to review your capitalization data before exporting.

The work tab allows you to examine issues and see how much of each is marked as capitalizable. The issues are grouped at the highest level, which means the capitalization percentage represents how much of the work grouped underneath is capitalizable.

If you've set automatic categorization rules and see a lower-than-expected capitalization percentage, it is likely because child items do not match your rules.

The employees tab shows individual contributors and their respective capitalization percentages. This means how much of their total accumulated effort is directed towards capitalizable issues. This view also shows excluded days (time offs and inactive days), which lower a contributor's accumulated effort. You can find more on this topic in the effort article.

Building reports

Once you've categorized work (either manually or automatically), reports will automatically be generated and delivered to the reports tab. In this view, you'll find monthly and yearly exports. The exports are split into employees (yearly) and capitalization (yearly/monthly) files.

You can use these files as raw data or alternatively, compile them into a capitalization report using our reporting template. To use the reporting template, copy it by clicking the "Copy reporting template" button on the reports tab and follow the instructions inside.

Frequently asked questions

Q: Can the work be aggregated by a specific Jira issue type in the software capitalization report?

A: It's not possible right now, but we're going to add support for this in the future. Currently, the work is aggregated by the highest-level issue that we can find from your Jira issue hierarchy. However, you can already see the FTE values for any of your issues from Swarmia's UI.

Q: What's the optional "additional info" field in software capitalization settings?

A: It is an extra column in the work export that provides more context about the capitalizable project (e.g., the reason for capitalization, and the capitalization date).

Concretely, it's a field in your Jira issues, e.g. a label or a custom field, that's pulled to the capitalizable work export as a separate column. It can be used for custom reporting purposes if you don't prefer to use software capitalization reporting template.

Q: Can I convert the software capitalization reporting template to a .xlsx file?

A: It's not possible right now as some of the formulas used in the Google Sheet reporting template are not available on Microsoft Excel. We're planning to build a reporting template for Excel in the future.

How software capitalization works in Swarmia
Reports on software capitalization based on your Swarmia data.
The work tab shows all issues for the year grouped by the highest level.
A typical way of doing automatic categorization is via a Jira custom field connected to capitalizable initiatives or epics.
Swarmia - Software capitalization