Skip to content
Home » Blog » SharePoint usage reports are empty

SharePoint usage reports are empty

Background

After migrating one of our farms from SharePoint 2013 to SharePoint 2019, everything appeared to be running smoothly.
A few months later, after installing a Cumulative Update, we started to notice a strange behavior in the Popularity Trends report.

The user’s mail

One of our clients reached out to report that their usage reports were completely empty without any visits a long time ago. No error messages, no warnings, just CSV files with zero hits and zero unique users.
The odd part? The sites were actively used every single day by hundred of users.

First checks

We verified the usual suspects:

  • Usage and Health Data Collection was enabled in the farm
  • Usage application proxy was in Started status.
  • The WSS_Logging database was online and receiving data.

Everything was in order, yet the reports were still empty.

Different case in SharePoint SE

We also tested on a SharePoint Subscription Edition environment.
There, it simply said:

“A web analytics report is not available for this site. Usage processing may be disabled on this server or the usage data for this site has not been processed yet”

…even though the service was enabled and working.
Two environments, two different symptoms, same probable cause: the UI is no longer correctly reading the data.

The workaround: query SQL directly

When we checked the logging database, we found the data was very much there.
To retrieve page views and unique users, we ran the following SQL query on the usage database:

SELECT
SiteUrl,
COUNT(RowId) AS Hits,
COUNT(DISTINCT UserLogin) AS UniqueUsers
FROM dbo.RequestUsage
WHERE LogTime >= DATEADD(day, -7, GETUTCDATE())
GROUP BY SiteUrl

ORDER BY Hits DESC

This query returned all visits and unique users, the exact data missing from the usage built-in report.

Recap

Since this CU update, we have observed:

  • In SP 2019, the usage report exports an empty CSV.
  • In SP SE, the site web analytics report says “Usage processing may be disabled on this server or the usage data for this site has not been processed yet” even when it is enabled.

Takeaway

If your usage reports are empty or display incorrect messages, chances are the data still exists in the logging database.
Querying it directly not only recovers the missing data but also gives you greater flexibility to customize reports according to your needs.

Advice

Schedule a monthly PowerShell script that:

  • Uploads it to a document library so users can consult it anytime
  • Collects all usage report data from SQL
  • Stores it as a CSV
  • Upload it to a document library so it’s easily accessible to the relevant users.