Jira Cloud administration · updated July 2026

How to find unused Jira Cloud apps

Jira Cloud will tell you which Marketplace apps you are paying for. It will not tell you which ones anyone is using. Here are the five methods administrators actually use, what each can genuinely prove, and where each one quietly misleads you.

Why this is hard in the first place

Atlassian Administration → Billing → Manage apps lists what is installed and what it costs. It says nothing about whether anyone has opened it since 2023.

The request for native usage analytics — ECO-470 — has been open for over four years and carries 383 votes. Administrators on the Atlassian Community describe the same problem repeatedly: "I have no idea what's actually being used in my org. We're paying for apps that might be gathering dust." Data Center administrators report having had a bundled App Usage tool; Cloud has never had an equivalent.

So every method below is a workaround. Knowing which workaround proves what is the difference between a confident cancellation and an angry team.

1. API request logs — the closest thing to real usage

Go to Atlassian Administration → Insights → Audit log → Settings and enable third-party app API request logging. From then on you get a record of which apps are calling Jira APIs.

  • It only records from the moment you switch it on — it cannot tell you about last year.
  • An app that renders entirely in the browser and rarely calls the API can look idle while being used daily.
  • Audit logs are unavailable on the Free plan entirely. We confirmed this directly against a Free-plan site: the API returns "Audit logs aren't available for this site as all of its Jira Cloud products are on Free plans."
Proves: an app is active. Cannot prove an app is inactive.

2. Configuration footprint — the most reliable signal

Most substantial apps leave traces in your configuration: custom fields, dashboard gadgets, workflow post-functions, conditions and validators. Each of those records the key of the app that created it. Walk your configuration, attribute every element to its owning app, and anything with no footprint anywhere becomes your first removal candidate.

You can do the custom-field part manually in about a minute. Open https://YOUR-SITE.atlassian.net/rest/api/3/field while signed in as an admin. Every custom field carries a schema.custom value in the form <app-key>:<field-type> — for example com.pyxis.greenhopper.jira:gh-lexo-rank. Group by the part before the colon and you have a list of which apps own which fields.

  • An app used only through its own screens may touch no configuration at all.
  • Forge apps identify themselves by installation ID (an ARI), not by their Marketplace key, so they will not match names on your invoice.
Proves: strong evidence of disuse. Still not proof.

3. Ask the vendor

Many vendors can pull usage figures for your tenant on request, because their own backend records it. It costs one email and often gives a better answer than anything you can measure yourself.

Proves: a lot — but you are trusting a party with an interest in the renewal.

4. The scream test

Unsubscribe from a suspected-unused app roughly 30 days before renewal while leaving it installed, and see whether anyone objects. Crude, and genuinely effective. Atlassian's soft delete makes it safer than it used to be.

Proves: definitively — at the cost of possibly disrupting someone.

5. Portfolio Insights

Atlassian shipped a beta for app portfolio discovery in April 2026. It helps you see what exists across your org, but at the time of writing it does not include per-app usage metrics. Worth watching; not yet an answer.

Proves: what you have, not what you use.

Which method to use when

MethodEffortBest for
API request logsLow, but needs Standard+ and time to accumulateConfirming an app is used
Configuration footprintMedium manually, low automatedProducing the shortlist
Ask the vendorOne emailApps where you already suspect the answer
Scream testLow effort, real riskFinal confirmation before cancelling
Portfolio InsightsLowInventory across many sites

The practical sequence: use configuration footprint to build a shortlist, confirm with API logs or the vendor, then scream-test anything still ambiguous before the renewal date.

One thing that surprises people: apps cannot see other apps

A natural question is why no Marketplace app simply lists your installed apps and checks each one. We tested this directly while building ours.

Jira Cloud does not expose the installed-app list to apps. The Universal Plugin Manager endpoint (/rest/plugins/1.0/) and the Connect add-ons endpoint both return 401 Unauthorized; scope does not match to a Forge app under every scope and authentication combination we tried — app-level and user-level, classic scopes and granular. No published scope covers those paths.

An administrator's own API token can read that list. An app running inside your site cannot. This is why any honest tool in this category asks you to supply your app list rather than discovering it — and why one that claims to detect unused apps with no input from you deserves a question about how.

Try the configuration-footprint method now

We built a free page that does step 2 for you. Paste the output of /rest/api/3/field and it groups every custom field by owning app, separating Atlassian's own from third-party Marketplace apps. It runs entirely in your browser — no install, no signup, and no network calls of any kind.

Open the free checker Nothing uploaded. Works offline.