Salesforce admins can generate a complete report inventory, including folder names, folder hierarchy, last modified dates and report owners, into Excel or Google Sheets automatically using Coefficient’s Salesforce connector and a custom SOQL query on the Report object. There is no native Salesforce view that shows all reports across all folders with modification dates in a single exportable list. Auditing your reporting infrastructure means navigating folder by folder in the Salesforce report builder, which is slow and gives you no ability to filter, sort or track changes over time.
A common challenge for Salesforce admins managing org cleanup or governance reviews: identifying stale reports, understanding folder ownership and documenting the reporting structure all require data that lives in Salesforce but has no clean export path through the native UI.
How to extract a complete Salesforce report inventory with folder hierarchy
Step 1. Write a custom SOQL query for the Report object
Open Coefficient in Excel or Google Sheets and select Import from Salesforce, then choose Custom SOQL Query. Write a query selecting Id, Name, FolderName, LastModifiedDate, LastModifiedById, LastRunDate, CreatedDate and OwnerId from the Report object, filtered where IsDeleted equals FALSE and ordered by FolderName then LastModifiedDate descending. This produces a flat list of every report in your org, organised by folder with the most recently changed reports first.
Step 2. Add folder access type and owner details
Extend your query to include Folder.Type and Folder.AccessType from the related Folder object and Owner.Name and Owner.Department from the related User object. This gives you the folder permission type, Public, Hidden or Shared, alongside the department of the report owner, which is the information you need for both governance reviews and cleanup decisions.
Step 3. Set up automated weekly refresh to track changes
Click Schedule on your import and set a weekly refresh. Each cycle captures the current state of your report inventory. Use Coefficient’s snapshot feature if you want point-in-time records of the inventory, useful for tracking when reports are moved between folders or when last-run dates change over time.
Step 4. Apply dynamic filters to identify stale and unused reports
Add a formula column calculating days since LastModifiedDate and another for days since LastRunDate. Filter the list to reports where LastModifiedDate is older than six months and LastRunDate is null or over a year ago. These are your cleanup candidates. Add a formula column constructing a direct Salesforce URL using the report Id so your team can navigate to any report directly from the spreadsheet.
What you get
Your full Salesforce report inventory updates weekly in a shared spreadsheet. Admins can filter by folder, owner, age or access type without navigating Salesforce folder by folder. Stale reports surface without manual review. For reference on how to structure Salesforce admin data for org management, see Coefficient’s Salesforce dashboard examples.
Start auditing your Salesforce report inventory automatically at coefficient.io/get-started.