How to remove provisioning profiles from Xcode
Master System Design with Codemia
Enhance your system design skills with over 120 practice problems, detailed solutions, and hands-on exercises.
Introduction
Provisioning profiles are not really "inside Xcode" as a special hidden feature. They are files stored on your Mac and referenced by Xcode for code signing. Removing them therefore means either deleting the downloaded profile files, cleaning signing state in Xcode, or both.
The important part is knowing why you are removing them. Sometimes you want to clear stale profiles so Xcode can redownload fresh ones. Other times you want to remove expired or conflicting profiles from the machine entirely.
Where Provisioning Profiles Live
On macOS, downloaded provisioning profiles are commonly stored under:
You can inspect the directory with:
Each file is typically named by a UUID rather than by the app name, so the directory can look cryptic at first.
Remove Profiles Manually
If you want to delete all local provisioning profiles:
If you want to remove only one, inspect the directory first and delete the specific file.
This removes the local copies from the Mac. If Xcode still has access to the signing account, it may download fresh profiles later when needed.
Remove and Refresh Through Xcode
If the goal is to clean signing state rather than just delete files, open:
- '
Xcode' - '
SettingsorPreferences' - '
Accounts'
From there, select your Apple ID and inspect the team details. Refreshing signing assets from the account panel is often enough after deleting stale local profiles.
This is useful when profiles were regenerated in the Apple Developer portal and the local machine is still using old ones.
Why You Might Need to Do This
Common reasons include:
- expired provisioning profiles
- stale profiles after certificate rotation
- signing conflicts between teams
- Xcode continuing to use an outdated profile after account changes
Deleting the local profiles forces Xcode to rebuild or redownload the signing context instead of reusing old files.
When a Full Xcode Restart Helps
After removing profiles manually, Xcode may still show stale signing state until it refreshes project metadata. Closing and reopening Xcode is often enough. This is not the real fix, but it does make sure the IDE notices that the local profile files changed underneath it.
Be Careful with Team Environments
If multiple projects or teams share the same machine, removing all profiles can disrupt unrelated builds temporarily. In those cases, prefer targeted removal or verify which profile UUID belongs to which app before deleting everything.
If the real problem is a bad signing certificate in Keychain, deleting provisioning profiles alone will not solve it. Profiles and certificates work together.
Common Pitfalls
- Deleting profiles and expecting broken certificates or missing private keys to be fixed automatically.
- Removing every local profile on a shared build machine without checking what other projects need.
- Assuming Xcode stores profiles in a mysterious internal database rather than as files on disk.
- Forgetting that Xcode may redownload profiles later if the account is still configured.
- Cleaning local profiles when the actual problem is in the Apple Developer portal configuration.
Summary
- Provisioning profiles are local files that Xcode uses for code signing.
- The usual local directory is
~/Library/MobileDevice/Provisioning Profiles. - You can remove profiles manually from disk or refresh signing assets through Xcode account settings.
- Deleting stale local profiles is useful when forcing Xcode to pick up new signing state.
- Profiles, certificates, and portal configuration are related, so remove the right thing for the actual problem.

