Short answer
Something the profile lists changed. You added a capability such as push notifications or Sign in with Apple, the certificate was revoked or replaced, a test device is missing, or the profile expired. Regenerate the profile in Certificates, Identifiers & Profiles, or turn on Automatically manage signing so Xcode does it. If a build service signs your app, give it the new profile too.
What made the profile stale, and the fix for each
01
You added a capability, or the profile expired
“If you enable or disable app services or if a provisioning profile expires, you need to regenerate the provisioning profile.” Apple, Edit, download, or delete provisioning profiles
Turning on push notifications, Sign in with Apple, associated domains or another capability changes the App ID, and the old profile no longer matches it. Xcode then says the profile doesn’t support the capability or doesn’t include the entitlement. In Certificates, Identifiers & Profiles, open Profiles, select the profile, click Edit, then Generate, and download the new one. Apple then says to remove the expired profile from your devices in Xcode and sign the app again with the regenerated one.
02
The certificate or a device isn’t in the profile
“For example, edit a provisioning profile if you revoked a certificate or disabled a device contained in the profile.” Apple, Edit, download, or delete provisioning profiles
doesn’t include signing certificate means the profile was made for a certificate you no longer sign with: a new Mac, a revoked certificate, or a teammate’s. doesn’t include the currently selected device means a test iPhone was never registered. Add the certificate or register the device, then edit and regenerate the profile.
03
Let Xcode manage signing, unless you have a reason not to
“Xcode-managed development provisioning profiles and distribution provisioning profiles don't appear in your developer account.” Apple, Edit, download, or delete provisioning profiles
In the target’s Signing & Capabilities tab, Automatically manage signing creates and refreshes profiles for you when capabilities or devices change. Those profiles won’t show in your developer account, which is expected. Keep manual signing only when a build service or a client’s account needs a specific profile.
04
Build services keep their own copy
EAS, Codemagic, Bitrise and Fastlane sign with the profile you gave them. After regenerating, update it there too, for example with eas credentials for Expo, or the build keeps failing on the service while it works on your Mac.
Checked against the vendor’s docs on : Apple Developer help: Edit, download, or delete provisioning profiles.
Rather hand it over?
Fixed scope, fixed price, paid upfront. The work happens in writing; no call needed.
- from $450App Fix TicketOne reproducible bug in an existing mobile or web app, diagnosed and fixed.See scope and start
- from $450AI-Built App RescueA Lovable, Bolt or Cursor app checked end to end in 3 days, then its worst problems fixed at a fixed price.No issues worth fixing, no charge. If the Launch Check finds nothing rated medium or higher, Simon refunds the full $450. You keep the report either way. This applies to the first 10 Launch Checks bought after October 30, 2026.See scope and start
Related: Xcode “Signing requires a development team” · iOS push “no valid aps-environment entitlement” · Expo EAS build failed · TestFlight Missing Compliance