Prerequisites
- A working Bilt app you’re ready to publish
- Enrollment in the Apple Developer Program ($99/year)
Step 1: Enroll in the Apple Developer Program
If you are not enrolled yet:- Go to developer.apple.com/programs/enroll
- Enroll as an individual or organization
- Complete identity verification (may take 24–48 hours)
Step 2: Create your app and bundle ID
Register the bundle ID in Apple’s developer portal, create the app in App Store Connect, then link both in Bilt.1
Register a Bundle ID
- Go to Apple Developer Portal — Register a Bundle ID
- Enter your bundle identifier (e.g.
com.yourcompany.appname) and a description - Click Continue and complete the registration
2
Create the app in App Store Connect
- Go to App Store Connect — Apps
- Click + next to Apps in the top left corner and select New App
- Select iOS as the platform, enter your app name, and choose a primary language
- For Bundle ID, select the bundle ID you registered in the previous step
- For SKU, enter any unique value (for example, the last segment of your bundle ID)
- Set User Access to Full Access, then click Create
3
Link both in Bilt
In your Bilt project, open Settings → Publish → App Store:
- Under Bundle ID, click Configure Bundle ID, enter the bundle identifier you registered, and click Save
- Under App ID, click Configure App ID and enter the numeric App ID from App Store Connect if Bilt has not linked it automatically yet:
- Open App Store Connect — Apps
- Click the app you created
- In the left sidebar, click General → App Information
- On the App Information page, look under the General Information heading for Apple ID — a numeric value such as
1234567890(this is not your bundle ID) - Copy that number and paste it into App ID
Step 3: Create an App Store Connect API key
Bilt uses your API key to create and manage signing assets on your behalf. Generate the key in App Store Connect, then add it on the App Store tab.1
Open App Store Connect API keys
2
Generate a new key
Under Team Keys, click + next to Active. Name the key (e.g. “Bilt”), set the role to Admin, and click Generate
3
Download and copy credentials
Mark down the Issuer ID and Key ID, then download the
.p8 private key file.4
Link in Bilt
In your project, open Settings → Publish → App Store, scroll to App Store Connect API Key, and click Configure API key:
- Enter your Issuer ID
- Enter your Key ID
- Upload your Private key (.p8) file
- Click Save
Step 4: Set up certificates and provisioning profiles
On the same App Store tab, scroll to Certificate & profile:- Generate — Bilt creates a distribution certificate and provisioning profile for you (recommended if you do not already have signing assets)
- Upload your own — Provide an existing
.p12certificate and.mobileprovisionprofile if you already use Apple distribution signing
Step 5: Build and publish to TestFlight
Open Settings → Publish → Build:- Select App Store as the build target
- Click Start App Store build when all prior steps are complete
- Bilt runs a cloud build. Progress appears under Recent builds
- After the build finishes and Apple processes it, click TestFlight on the Build tab to manage testers
Step 6: Submit for App Store review
Bilt’s part ends when the build is uploaded — every App Store build is sent to App Store Connect automatically, and each build row on the Build tab shows an App Store Connect status once Apple starts processing it. The review submission itself happens in Apple’s tools.1
Wait for Apple to process the build
After the Bilt build finishes, Apple processes the uploaded package (usually 15–30 minutes). When it is done, the build appears in TestFlight — use the TestFlight button on the Build tab to jump straight to your app’s TestFlight page in App Store Connect.
2
Complete your store listing
In App Store Connect, open your app and fill in the version page:
- App description, keywords, and screenshots (at least one 6.7” and one 6.5” iPhone set)
- Support URL and privacy policy URL
- App Privacy details (what data the app collects)
- Age rating and pricing
3
Check Apple's guidelines for your kind of app
Every app needs a privacy policy URL and accurate App Privacy answers — Apple rejects apps whose privacy labels don’t match what the app actually collects. On top of that, the App Review Guidelines add requirements based on what your app does:
- Accounts — if users can create an account, the app must also let them delete it from within the app
- Social or user-generated content — requires content moderation, a way to report offensive content, and the ability to block other users
- Health, finance, or other sensitive data — stricter rules on how data is collected, stored, and shared; some categories require the developer to be a legally accountable entity (e.g. an organization, not an individual)
- Kids category — extra privacy restrictions and no third-party advertising or analytics without safeguards
4
Attach the build and submit
On the version page, click Add Build under the Build section and select the build Bilt uploaded. Answer the export compliance question, then click Add for Review and Submit to App Review.
5
Apple reviews the app
Review typically takes 24–48 hours. You’ll get an email when the status changes. Once approved, the app goes live automatically or on the release date you chose.
Publish tabs in Bilt
Common issues
Distribution certificate already exists
Distribution certificate already exists
You have hit Apple’s limit for distribution certificates on your account. Revoke an unused certificate in the Apple Developer certificates list, then try generating again in the App Store tab.
Bundle ID already declared on this project
Bundle ID already declared on this project
If you see A target with this bundle id is already declared on the project, that bundle identifier is already linked to this Bilt project (for the main app or an extension). Use the existing target in the App Store tab, or choose a different bundle ID when registering a new one in Apple Developer.
Certificate or provisioning profile mismatch
Certificate or provisioning profile mismatch
Ensure your distribution certificate matches the provisioning profile, and both match the bundle ID. Regenerate in the App Store tab or upload matching assets.
Build fails
Build fails
Check the build logs in the Build tab. Common causes: expired certificate, missing app icon, or unsupported API usage.
App Store rejection
App Store rejection
Apple provides a reason for rejection. Common fixes: add a privacy policy URL, ensure the app has enough functionality, remove placeholder content, and meet the category-specific rules above (account deletion, content moderation for social apps, sensitive-data handling). You can fix the issue in Bilt, run a new build, and resubmit — rejections don’t hurt future reviews.
Further reading
- App Store deployment without developers — Alternatives to publish to the App Store without using Bilt
- Publish your app — Feature overview
