Skip to main content
This guide shows you how to publish the current version of your Bilt app as a Progressive Web App (PWA). A PWA opens from a web URL and can be added to a phone’s home screen. You do not need a hosting account, domain, Apple Developer account, or Google Play account.
The published URL is public. Anyone with the URL can use the web app or add it to their home screen.

Before you start

You need:
  • A working Bilt app
  • Workspace-owner access to the project
Collaborators can work on the app, but only the workspace owner can publish, cancel, republish, or unpublish it.

Step 1: Check the current app

Publishing uses the version running in the active preview.
  1. Open the Bilt project
  2. Click through the important screens
  3. Ask Bilt to fix anything unfinished or broken

Step 2: Open web publishing

Web publishing lives in two places: Both show the same status, and either can start a publish. The dialog has a Domains & details link that takes you to the tab. To use the quick path:
  1. Return to the project
  2. Click Deploy & Share
  3. Choose Publish to web
  4. The Publish to web dialog opens

Step 3: Start the publish

  1. Read the information in the Publish to web dialog
  2. Click Publish
Publishing an app to the web: the dialog, the build, and the finished URL with its QR code
If the app uses payments, Settings → Web App shows a warning at the top — in-app purchases don’t work in a PWA.
Bilt shows the current stage:
  1. Starting build
  2. Building your app
  3. Uploading
  4. Ready
Publishing usually takes about a minute. Behind the scenes, Bilt:
  • Adds the standard PWA setup if the project does not already have it
  • Builds the current app for the web
  • Creates the install information, icons, and service worker
  • Uploads the app
  • Serves it over HTTPS at its own web.bilt.me address

Step 4: Open the PWA

When the status reaches Ready:
  1. Click Open app
  2. Test the important screens again
  3. Copy the web address if you want to save or share it
The address stays the same when you republish, so people do not need a new URL after each update.

Share the PWA

Both surfaces show the permanent web address with a copy button, and a QR code to point a phone at. Settings → Web App adds the rest: Add it to your home screen spells out the iPhone and Android steps, and Custom domain lives below it. Anyone with the URL can open the app.

Use your own domain

By default the app lives at a long web.bilt.me address. You can also serve it on a domain you own, like app.yourdomain.com. You need:
  • A published app — the option only appears once the first publish reaches Ready
  • Workspace-owner access
  • A plan that includes custom domains
  • Access to your domain’s DNS settings
Adding a custom domain does not replace the original web.bilt.me address. Both keep working.

Step 1: Add the domain in Bilt

  1. Open Settings → Web App
  2. Scroll to Custom domain
  3. Type the address you want to use, such as app.yourdomain.com
  4. Click Add
Use a subdomain like app.yourdomain.com rather than the bare yourdomain.com. Root domains need a DNS feature called CNAME flattening, and not every provider supports it.

Step 2: Add the two DNS records

Bilt shows two records. Add both at whoever manages your domain’s DNS — your registrar, or a provider like Cloudflare, Route 53, or Namecheap. Each row has a copy button for the host and the value. Copy them exactly.
If your DNS is managed by Cloudflare, set the CNAME record to DNS only (grey cloud) rather than proxied. A proxied record can stop the certificate being issued.

Step 3: Wait for it to go live

The status updates on its own as your DNS spreads:
  1. Waiting for DNS — the records have not been seen yet
  2. Issuing certificate — ownership is confirmed, HTTPS is being set up
  3. Almost live
  4. Live
This usually takes a few minutes, but DNS changes can take longer depending on your provider. You can close settings and come back later.
Once the status is Live, open your domain in a browser. It serves the same app, over HTTPS, with a certificate that renews automatically.
Leave both DNS records in place. Removing them later takes the domain offline.

Use more than one domain

You can add several domains, and different projects can use different subdomains of the same domain — app.yourdomain.com for one app and shop.yourdomain.com for another. Each one is added and verified separately. How many you can add in total depends on your plan.

Remove a domain

  1. Open Settings → Web App
  2. Find the domain under Custom domain
  3. Click the bin icon next to it
The domain stops serving your app. The original web.bilt.me address is unaffected. You can then delete the two DNS records at your provider.

Add the PWA to an iPhone

  1. Open the PWA address in Safari
  2. Tap the Share button
  3. Scroll down
  4. Tap Add to Home Screen
  5. Confirm the name
  6. Tap Add
The PWA appears on the home screen and opens without the normal Safari controls.

Install the PWA on Android

  1. Open the PWA address in Chrome
  2. Tap the menu button
  3. Tap Install app
  4. Confirm the installation
The PWA appears with the other apps on the device.

Publish an update

  1. Make the changes in Bilt
  2. Wait until the preview shows the finished result
  3. Open Deploy & Share → Publish to web, or Settings → Web App
  4. Click Republish
  5. Wait for Ready
If the new build fails, the previous working version stays online.

Take the PWA offline

  1. Open Settings → Web App
  2. Click Unpublish
  3. Confirm by clicking Unpublish again
The address stops serving the app until you publish again.

Important limitations

  • In-app purchases do not work in PWAs.
  • PWAs can’t be published to the App Store or Google Play.
  • Some device-specific native features may behave differently or be unavailable in a PWA.

Troubleshooting

Ask the Bilt workspace owner to publish the app. Collaborator access does not include publishing, cancelling, republishing, or unpublishing.
Return to the project and start or reload the preview. Wait until the app appears, then open the publish dialog and try again.
Read the reason Bilt shows under the status, return to the project, and ask Bilt to fix the build problem. Then click Republish. The previous working version remains online.
They live in Settings → Web App, along with the home-screen instructions. The Publish to web dialog is the quick path — click Domains & details in it to jump to the tab.
Make sure you opened the published HTTPS address in Chrome. Browser and Android versions may show Add to Home screen instead of Install app.
Check both records at your DNS provider, and that the host and value match what Bilt shows exactly. If your DNS is on Cloudflare, set the CNAME to DNS only rather than proxied. Some providers add your domain to the host for you — in that case enter only the part before it.
Custom domains are a paid feature. Upgrade your plan, then add the domain again.
That exact address is attached to another project. Remove it there first, or use a different subdomain.
The certificate is not ready yet. Wait until the status reads Live, then reload. If it stays on Waiting for DNS, the TXT record has not been seen.
The domain resolves but the project has nothing published — publish it, or check the domain is attached to the project you meant.

Further reading