How macOS Tracks Installed Packages: A Look at Receipts

If you’ve ever installed a .pkg file on your Mac, you might think the installation is invisible once it’s done. But behind the scenes, macOS keeps a detailed record called a receipt. Think of it as a digital footprint of every package your system installs.
What Is a Receipt?
A receipt is a small file (or set of files) that contains metadata about an installed package. This includes:
The package identifier
The version number
When it was installed
Which files were added to your system
Receipts help macOS—and you—keep track of what’s on your computer, which is especially handy for troubleshooting or auditing installed software.
Where to Find Receipts
Depending on your macOS version, receipts are stored in different locations:
macOS 10.7 and later:
/var/db/receipts/Older macOS versions:
/Library/Receipts/
Each receipt usually comes in two parts:
A
.plistfile containing metadataA
.bom(Bill of Materials) file listing all the files installed by that package
How to Work with Receipts
Here are some practical Terminal commands to explore receipts:
1. List all installed packages
pkgutil --pkgs2. Get detailed info about a package
pkgutil --pkg-info com.company.pkgnameThis will show the package ID, version, and install time.
3. See which files were installed
pkgutil --files com.company.pkgname4. Inspect receipt files directly
View metadata:
plutil -p /var/db/receipts/com.company.pkgname.plistView the installed file list:
lsbom /var/db/receipts/com.company.pkgname.bomWhy This Matters
Receipts aren’t just for macOS itself—they’re incredibly useful for anyone managing multiple Macs or troubleshooting installations. They let you:
Audit installed packages
Verify versions of critical software
Track which files came from which package
Diagnose installation problems
So next time you install a .pkg, remember: your Mac isn’t just dropping files on your system. It’s keeping a careful record, quietly and efficiently, so you—or your IT team—can always check back.
You should also read:

macOS apps - How to find Bundle IDs
There are several common ways to find the Bundle ID / CFBundleIdentifier of a macOS app. We'll focus on utilizing the Apple onboard macOS software tools Terminal and Finder. Terminal with osascript You can find the Bundle ID of an application on a macOS system using…
Continue reading...
Create a macOS package with Packages
In this guide we will go through two ways to use the application Packages to create a macOS packages from a pkg or dmg. Package can after its build be used to distribute with your favorite MDM. The Packages application used to create the pkg…
Continue reading...
Allow System Extensions on macOS using mobileconfig
We have a package to be distributed from your MDM and during the installation the users have to click Allow on System Extension. So how to allow System Extensions on macOS using MDM and a mobileconfig file? Tools used In the example below, we have…
Continue reading...
Comments