How-to Check Inactive Project Online Licenses in Office 365

Posted By Posted by: EPM Partners on August 18, 2017

I recently had a request by a company to provide a list of inactive Project Online licenses in Office 365. One way to reduce license costs is to transfer unused licenses before purchasing new ones and this was exactly what our client intended to do. At first, I thought this is ‘easy’, it is a simple task and I know where to export a list. However, it turned out to be a challenge.

When requested for this list, I thought of the following UI:

Figure 1 – The Old PWA User Table


However, things have changed in Project Online. Unfortunately, Microsoft has removed this feature on the update late in 2016.

Figure 2 – The New PWA user Table


I researched in Google to find solutions on how to get license usage list. And found two main methods people use, although I didn’t really like either of them. The first method was to enable the “Reporting” site collection feature, configure to capture searches and edits, wait for a while, and then generate an Audit log excel report. Having been a SharePoint administrator in the past, I knew this could put a performance hit on the environment and I could identify scenarios where an active user could falsely ne identified as inactive. In which case, further research would be needed.

The next and most popular method was to incorporate a custom JavaScript file on the home page of the Project Web Application (PWA), Project Site, or on a commonly used Project Detail Page. The script would write user name and date to a custom list. After waiting for a month or so, we would then be able to look at the list and see who is active. To get a solution designed for the PWA homepage, go to

I looked at this simple solution but was not completely satisfied, so I did some more snooping around with an Office 365 administrator account and found the best technique. I discovered an existing report that all Office 365 administrators can use to run a usage report. To get one related to our inquiry, click Usage then SharePoint files.

Figure 3 – Usage Reports

The SharePoint usage view will show all the SharePoint activity.

Figure 4 – SharePoint Usage Report

The SharePoint usage view will show all the SharePoint activity.

Figure 5 – SharePoint Usage Report for last 30 Days


In the SharePoint Usage Report, we want to isolate Project Online usage. We can do this by exporting a list and including a column to indicate which licenses each user is assigned with. I recommend exporting to CSV and opening it in Excel, the list should then include the Product assigned column.

Figure 6 – Exporting CSV with type of Licenses

Now, if a user has zero page views in your set time frame and is assigned a Project Online license, this user can be considered available for license removal. I personally would set 90 days back because somebody could be on a 30-day vacation.

The one caveat with this report is that if a Project Online licensed user frequently access something unrelated to Project Online in this subscription of SharePoint Online, he/she would still be identified as active. To fine tune this query and find more unused licenses, one of the previous two methods I discovered would need to be applied. If office 365 subscription is primarily used for Project Online, then this caveat is not an issue. Regardless, this should be the first report to generate when assessing Office 365 license usage.

Blog Posted In Blog Posted In: Blog, How to, Project Online, SharePoint
Blog Posted In