# What Is /private/var/db/receipts on Mac?

> The receipts folder records each installer package on your Mac and the files it installed. Deleting a receipt uninstalls nothing; it erases the record.

- Updated: 2026-10-10
- URL: https://fresh.ist/library/system-receipts/

**TL;DR:** /private/var/db/receipts is the Mac's installer database: a .plist and a .bom file for each package installed with Apple's Installer or the App Store. They record the package ID, version and every file it put on disk. Removing a receipt doesn't uninstall anything; it only erases the record, so do it after the software itself is gone.

## Definition

- Full path: `/private/var/db/receipts`
- Scope: system (shared, owned by macOS/root)
- Freshist checks this folder when uninstalling an app. When you uninstall an app, Freshist only considers items directly inside this folder whose name matches the app's bundle ID. They're never pre-selected, and because the folder is owned by macOS (root), selected items are deleted permanently by Freshist's signed helper rather than moved to the Trash.

## The Mac's record of installed packages

When you install software from a `.pkg` file, the macOS Installer writes two files into `/private/var/db/receipts` (also reachable as `/var/db/receipts`, because `/var` is a link to `/private/var`):

- `<package ID>.plist`: the package ID, version, install date and the volume it went to.
- `<package ID>.bom`: a **bill of materials** listing every file and folder the package installed, with permissions and checksums.

Apple's system updates, the Command Line Tools, many App Store apps and most third-party installers all leave receipts. Drag-and-drop apps from a disk image don't, because no installer runs.

## Why receipts are useful

Receipts are the most reliable map of where a package put its files, and that list is what you need when uninstalling software that came as a `.pkg`. A package can spread files across `/Library`, `/usr/local` and elsewhere; the `.bom` file remembers all of them.

| Command | What it shows |
|---|---|
| `pkgutil --pkgs` | Every package ID with a receipt |
| `pkgutil --pkgs='com\.example.*'` | Package IDs matching a pattern |
| `pkgutil --pkg-info com.example.pkg` | Version, install location and date |
| `pkgutil --files com.example.pkg` | Every path the package installed |
| `pkgutil --file-info /path/to/file` | Which package installed a given file |

All of these only read. Package IDs often don't match the app's bundle ID; a vendor might use `com.example.pkg.Tool` for an app identified as `com.example.Tool`, so search by vendor name if the first pattern finds nothing.

## Removing a receipt the right way

A receipt is only a record. Removing it before removing the software leaves the files on disk with no list of where they are. The order that works:

1. Run the vendor's uninstaller if there is one.
2. Otherwise use `pkgutil --files <package ID>` to see what was installed, and remove the software's files and background items (see [LaunchDaemons](/library/system-launch-daemons/) and [PrivilegedHelperTools](/library/system-privileged-helper-tools/)).
3. Then remove the receipt with Apple's own command:

```
sudo pkgutil --forget com.example.pkg
```

`--forget` discards the receipt data, the `.plist` and `.bom`, without touching any installed files. Don't forget receipts whose IDs start with `com.apple.pkg.`; macOS and Apple's installers use them to track system components and updates.

## How Freshist fits in

Like the other system folders, Freshist only considers receipts here whose names match the uninstalled app's bundle ID, as summarized in the facts box. Receipts filed under a different package ID are left for you to review with `pkgutil`. For the rest of an app's traces, see [uninstalling apps completely](/blog/uninstall-apps-mac-completely/), and [/safety/](/safety/) explains how Freshist treats folders owned by macOS.

## Inspecting the folder directly

```
ls -la /private/var/db/receipts | head -40
du -sh /private/var/db/receipts
```

Neither command changes anything. Finder hides `/private`, so use **Go → Go to Folder…** and enter `/private/var/db/receipts` if you prefer browsing.

## Sources

- `man pkgutil` in Terminal (Apple's package receipt tool)
- [Install and uninstall apps from the internet or a disc on Mac](https://support.apple.com/guide/mac-help/install-and-uninstall-apps-from-the-internet-or-disc-mh35835/mac) (Apple Support)
- [Packaging Mac software for distribution](https://developer.apple.com/documentation/xcode/packaging-mac-software-for-distribution) (Apple Developer Documentation)

## Frequently asked questions

### Will deleting receipts free up much space?

Usually tens to a couple of hundred megabytes in total. Large apps like Xcode or office suites have the biggest .bom files, at tens of megabytes each. Leftovers from removed software are worth clearing for tidiness, not for space.

### Can a missing receipt cause problems?

Sometimes. Some installers check for an existing receipt to decide whether to upgrade or do a fresh install, and pkgutil can no longer tell you which files a package installed. Only remove receipts for software you've already uninstalled.

### Why do I see receipts for apps I installed from the App Store?

The App Store installs apps as packages too, so many of them get a receipt here, often with AppStore in the package ID. This is separate from the purchase receipt stored inside the app.

---

Canonical page: https://fresh.ist/library/system-receipts/
Official site: https://fresh.ist/ (fresh.ist only)
Generated: 2026-10-10
