Skip to content

How to find unused ChatGPT, Copilot and Claude seats

AI seats are bought in round numbers and assigned in a hurry. A year later some are used every day, some were opened twice, and some belong to people who left. Here is how to tell them apart before the renewal.

By
GhostAudit
Published
Last reviewed
Reading time
7 min read

Key points

  • Start with a register: one row per paid AI licence, with seats, price per seat, renewal date and an owner.
  • Each vendor reports activity differently. Learn what “active” means in each console before comparing numbers.
  • Define inactive and low use in writing, over at least 30 days, and separate “not used” from “cannot be measured”.
  • Ask before you remove. A list of inactive seats is a list of people to talk to, and some of them need training more than they need the seat taken away.

Why seats go unused

Paid AI seats are unusual software licences. They are bought on enthusiasm, often for a whole department at once, and their value depends on a habit that some people form and others do not. The usual reasons a seat sits idle:

  • It was assigned in bulk. Everyone in a team received one; a third had no use for it.
  • The person prefers something else. They hold a company seat for one assistant and use a different one, sometimes on a personal account.
  • The seat duplicates another. The same person holds seats for two or three assistants and uses one.
  • Nobody showed them how. They opened it in the first week and never returned.
  • They left or changed role, and the seat was not reclaimed.

Seats are billed per person, every month, so a few dozen idle ones are a real sum by the time the renewal arrives. Finding them is not complicated. It needs a register, a definition and a careful conversation.

Step 1: build the register

List every AI product you pay for per seat. For each one record:

FieldWhy
Product and planSeats for the same product on different plans have different prices
Seats purchasedFrom the invoice or order, not from memory
Seats assignedFrom the admin console; unassigned seats are the easiest saving
Price per seat per monthAnnual contracts divided by twelve
Renewal dateThe date by which a decision has to be made
OwnerThe person who will make it

Finance can usually produce the first draft from invoices in an afternoon. Expect to find a licence nobody on the governance side knew about; that is a useful result of its own. Our guide to finding shadow AI covers the expense-data route in more detail.

Step 2: get each vendor's activity data

Every major vendor gives administrators some view of who is active. The definitions differ, so read them before comparing. What follows reflects each vendor's documentation at the time of writing; the consoles change often, so check the linked pages.

ChatGPT (OpenAI). Workspace analytics for Enterprise and Edu plans include counts of seats and active users, and an export of workspace reports as CSV for a date range. OpenAI's documentation describes a per-user report in which a user counts as active if they sent at least one message in the reporting period. See Workspace analytics for ChatGPT Enterprise and Edu.

Microsoft 365 Copilot. The Microsoft 365 admin center has a Copilot usage report with enabled users, active users and a per-user table showing the last activity date overall and for each app (Teams, Word, Excel, PowerPoint, Outlook, OneNote and Copilot Chat). It covers the last 7, 28, 90 or 180 days and can be exported as CSV. Two details matter. A user is active only if they performed an intentional action, such as submitting a prompt; opening the Copilot pane does not count. And user names are hidden in usage reports by default, a privacy setting an administrator has to change deliberately. See Microsoft 365 Copilot usage report.

GitHub Copilot. Organization owners can see each seat's last activity under the Copilot access settings, download an activity report as CSV, or read last_activity_at for each seat from the REST API. GitHub notes that a recent date can take up to 24 hours to appear, and that activity in an editor is reflected only if telemetry is enabled there. See Reviewing user activity data for GitHub Copilot.

Claude (Anthropic). Team and Enterprise plans have a usage analytics view for owners, with activity and seat utilisation figures, and a member list that exports as CSV. More detailed per-user metrics are described for the Enterprise Analytics API. See View usage analytics for Team and Enterprise plans.

Three cautions apply to all of them.

  • "Active" is generous. One message in a month makes a user active in most of these reports. A seat used once is not a seat that earns its price.
  • Each console knows only its own product. None will tell you that the person with an idle seat for one assistant uses another for two hours a day.
  • Per-user data is personal data. Pulling named activity reports about employees is a form of monitoring. Involve whoever owns that question in your organization before you start, not after.

Step 3: define the categories before you look

Decide the rules in writing first, so that the result is not argued about afterwards.

  • Period. Thirty days is the minimum. Ninety is better for anything bought annually, and it smooths out holidays. Avoid measuring across a period that includes the rollout itself.
  • Inactive. No use in the period.
  • Low use. Some use, below a threshold you choose. A reasonable starting point is fewer than three active days, or less than half an hour in total, in thirty days.
  • Not measurable. Kept separate from inactive. If you have no data for a seat holder, say so and leave them out of any savings figure.

That last category is the one most often skipped, and skipping it is how a careful engineer who uses the tool on a machine you cannot see ends up on a removal list.

Step 4: add an independent measurement

Vendor consoles tell you what the vendor counts. An independent measurement, from sensors on your own devices that record which AI tool was used and for how long, adds three things the consoles cannot.

Time, not just a date. Minutes of active use and number of active days separate a daily user from someone who clicked once.

One view across vendors. The same person's use of every assistant, on the same scale. This is how duplicated seats show up.

Use without a seat. People who use a product you pay for without being on the seat list, typically on a free or personal account. That is a governance finding as much as a cost one: company work is being done outside the company workspace.

Be clear about what device-level measurement misses. It sees enrolled devices only, so use on a phone or an unmanaged laptop is invisible. It identifies the tool, not the account, so it cannot tell a company seat from a personal login. And assistants embedded inside another application may not be distinguishable from the application itself. For Copilot inside the Microsoft 365 apps in particular, Microsoft's own report is the better source.

The sound approach is to use both: the vendor's report for what happened inside the product, and your own measurement for time, cross-vendor comparison and unlicensed use.

Step 5: act on the list

Reclaim unassigned seats first. Seats purchased but never assigned need no conversation.

Reclaim seats of leavers. Compare the seat list with your directory.

Ask inactive seat holders. A short message works: we are reviewing AI licences before renewal; our records show little or no use of yours; do you want to keep it? Many will say no. Some will say they use it on another device, which tells you about your measurement.

Treat low use as a training question. People who tried a tool and stopped are often the ones a half-hour session would convert. Removing the seat settles the cost and loses the benefit.

Resolve duplicates deliberately. If most of a team prefers one assistant, that is information for your approved-tools list, not just for the invoice.

Reduce at renewal, and write down why. Take the numbers to the licence owner with the method attached. Most contracts only let you reduce seats at renewal, which is why the renewal date belongs in the register.

Then repeat quarterly. Seat use drifts, and the second review takes a fraction of the time of the first.

A note on fairness

Usage data about named individuals can easily turn into a performance measure, which it is not. Low use of an AI assistant says nothing reliable about someone's work. Set the purpose down, licence management, and keep to it. If your organization runs its monitoring in a pseudonymous mode, you can still get totals per licence, so many seats active and so many idle, and send a general message asking people to release seats they do not want. That is slower than a named list and avoids building one. Our guide to monitoring AI use without surveillance covers the principles.

How GhostAudit approaches it

GhostAudit keeps the register and does the join. You record each licence with its seats, price and renewal date, and import the seat list as a CSV. Licence utilisation then sets each seat against what the sensors measured over 30, 60 or 90 days: active, low use, inactive, or not monitored where no sensor could have seen the tool. It counts people using the tool without a seat, and estimates savings as inactive seats multiplied by the price you entered.

It does not connect to vendor consoles, it cannot tell which account was signed in, and it sees Microsoft 365 Copilot only on the Copilot site and app, not inside Word or Teams. In pseudonymous mode it shows totals per licence and never a per-person list. The page states each of these limits.

Sources

This guide is for orientation and is not legal advice. It was last reviewed on 10 November 2026; laws and guidance change, so check the official texts linked above. Spotted something out of date? Tell us.

See what is in use before you decide anything.

Start a 14-day trial with every Govern feature, connect one discovery source and enroll a handful of devices. No card is needed to start, and nobody is asked to change how they work.