Forums

Articles
Create
cancel
Showing results for 
Search instead for 
Did you mean: 

Your Jira bill does not care whether anyone logged in

Most teams believe they pay for the people who use Jira. They do not. They pay for the people who have access to it, and those two groups drift apart quietly over years.

This is the sentence from Atlassian's own billing documentation that surprises people the most:

"Additional users are automatically counted towards billing even if they don't accept your invite or log in."

Read that again if you have ever justified a renewal on the basis that a tool is well used. Logging in is not part of the calculation. Someone invited in 2023 who never once opened Jira has been a paid seat ever since.

What actually stops the billing

Two things do, and the documentation is unambiguous about both:

  • Removing the user. "You won't be billed for a user once they're removed."
  • Suspending their access. "You won't be billed for a user when their access is suspended."

Notice what is not on that list. Deactivating someone in a connected directory, taking them off a project, stripping their permissions, or simply watching them stop logging in are not the same actions, and none of them are stated to stop the bill.

The gap the documentation leaves open

Here is the part worth knowing, and I would rather be straight about the limits of what is documented than pretend otherwise.

Product access in Atlassian Cloud is normally granted through a default product group. When you give someone access to Jira, they are added to that group, and the group is what carries the licence. Atlassian's pages on removing and suspending users state the billing effect of those two actions clearly, but they do not state whether revoking product access on its own, or removing someone from the product group while leaving the account in place, stops the billing.

That silence is the problem. It means the answer to "are we still paying for this person?" cannot be reasoned out from the documentation. It has to be checked against your actual bill.

If you have tested this on your own site and know the answer definitively, I would genuinely like to hear it, because it is the single most common source of confusion I see on this topic and there is a live discussion about exactly this problem in App Central.

Where the drift comes from

In practice, seats accumulate through ordinary, sensible-looking behaviour rather than negligence.

Offboarding that stops at the wrong layer. Someone leaves, IT disables their SSO account, and everyone considers it handled. Whether the Atlassian seat went with it depends on how your directory sync is configured, and nobody checks because the person has visibly gone.

Invitations that were never taken up. A team invites twelve people to a project. Eight join. Per the quote above, all twelve are counted.

Contractors and agencies. Access is granted for a three-month engagement. The engagement ends. The access does not, because nobody owns removing it.

Internal moves. Someone shifts from engineering to sales and stops using Jira entirely. They have not left the company, so no offboarding process fires at all.

None of these produce an error, a warning, or a single visible symptom. The only signal is a number on an invoice that is slightly larger than it needs to be, and it arrives once a year when nobody has time to interrogate it.

What to actually check

Before your next renewal, four questions are worth an hour:

  1. How many users hold product access, and how does that compare to the number who logged in during the last quarter? The gap between those two numbers is your answer. If you have never measured it, expect to be surprised.
  2. Which users have never logged in at all? These are the clearest wins, because there is no argument to have about whether someone might need it.
  3. Does your offboarding process actually remove or suspend the Atlassian user, or does it stop at the directory? Test it with one person who left recently rather than reading the runbook, because runbooks describe intentions.
  4. Who owns contractor access expiry? If the answer is nobody, that is where the persistent waste lives.

The wider version of this problem

Jira is the one you can see, because you administer it. The same drift is happening across every other tool your organisation pays for, and usually with less visibility, because those subscriptions were bought by people who no longer work there and renew on dates nobody tracks.

The pattern is identical every time: access outlives need, renewal is automatic, and the only moment anyone looks is after the money has already gone.

Closing

If you take one thing from this: stop treating "are people using it?" and "are we paying for them?" as the same question. Atlassian's documentation is explicit that they are not related, and the assumption that they are is what makes the waste invisible.

If your offboarding reliably closes the seat, I would be interested to know how you wired it up. Most of the setups I have seen close the account and quietly leave the licence behind.

6 comments

Becker_ Rene
Contributor
July 28, 2026

For us, the answer is IdP and fixed licenses.

 

We have a contract where a certain amount of licenses is fixed.

If we do not use them -> we pay the same amount

If we use all of them -> we pay the same amount

We restricted joining unless we give (license-)access via IdP.

 

For our IdP we use several groups (besides permissions we also have a license group per each app) and when they hit the license limit, new users simply are not granted access by Atlassian, hence nothing happens, no surprises.

 

When people cannot join + once per quarter, we sort through the list (using the Atlassian user list export, which shows who logged in, in a certain span of time).

 

Also we use admin.atlassian.com -> Billing. There you have a clear overview of how many licenses you have and how many you are using - per app.

 

So looking at your description: Is it possible, that this scenario only exists, when not using an external IdP and when not restricting how users may join? (my only point of reference is our own setup)

---

 

Like • # people like this
Apryl Harris
Contributor
July 28, 2026

IdP stops the billing when a user's email addy becomes deactivated. So, in addition to IdP, a license culling process was implemented for unused licenses. Culling covers the people who were sent an invite but never used or haven't used within a certain period. 

Like • # people like this
Peter Hallander _Stackedboost_
Atlassian Partner
July 28, 2026

Rene, that is a much better setup than most, and I think you have put your
finger on it. The scenario is worst without IdP-driven deprovisioning.

One distinction worth drawing though: SSO and SCIM are not the same thing.
Plenty of orgs have an IdP for login but no automated deprovisioning, so
accounts still get closed by hand and the seat quietly survives. Having an IdP
does not by itself mean the loop is closed.

The case neither setup catches is the internal mover. Someone changes team,
stays perfectly active in your directory, and simply stops needing Jira.
Nothing deprovisions because nothing about them changed.

Which is why Apryl's point is the important one. IdP handles leavers, the cull
handles everyone else. You have both landed on needing both, which is a better
answer than the one I gave in the article.

And the admin.atlassian.com Billing view showing licences held versus used per
app is the practical tip in this thread, so thank you for that.

Like • # people like this
Matt
Contributor
July 28, 2026

The best is to run a script for who did not use the Site or Apps for 3/6 months and revoke/suspend access to those individuals. And via an automation for a ticket creation every 3/6 months to run the script and write internal comments for audit purposes. Of course you can make sure for each and every offboarding, you run a separate automation or manually revoke license, suspend account or similar. So, it's always up to date.

Like • # people like this
Peter Hallander _Stackedboost_
Atlassian Partner
July 28, 2026

Matt, the ticket with internal comments is the part I would steal. Rene and
Apryl described how to catch the waste, you described how to prove you did,
and that is the bit that matters when someone asks six months later why an
account was closed.

Jason Krewson
Rising Star
Rising Star
Rising Stars are recognized for providing high-quality answers to other users. Rising Stars receive a certificate of achievement and are on the path to becoming Community Champions.
July 28, 2026

Like others have mentioned we use IDP and subscribe to a fix amount of licenses so it really doesn't matter if they have a license or not, our cost will just be the same.

We do have a ton of testers though that rotate all the time so this artificially inflates license usage. To keep up with this I automated license review with Power Automate, it reviews all users that currently have a license checking who hasn't logged in for over 6 months, builds a report, and emails it to me monthly. From there I just review the accounts and remove anyone that doesn't need a license anymore, that's pretty much everyone except service accounts and a couple one offs.

I also have another Power Automate flow that sends me all our license counts once a month so I can keep an eye on that.

Like • Gabriela - LeanZero likes this

Comment

Log in or Sign up to comment
TAGS
AUG Leaders

Atlassian Community Events