Browse the documentation

Troubleshooting builds and published apps

2026-11-01· 6 min read· View as Markdown

Find your symptom below. Each one gives the likely cause and what to do. If a build fails, your credit is returned automatically, so you can try again without paying twice.

The build failed

Message or symptomLikely causeWhat to do
We couldn't reach your siteThe address is down, private or slowOpen it in a private window, then relaunch
Your site has no valid PWA manifestYou chose the Android Build (Web)Add a manifest, or use the Native build
Something went wrong with your app iconThe icon isn't a usable imageUpload a square 512×512 PNG
We couldn't sign the appUsually on our sideRelaunch. Contact us if it happens again
The build stopped while compilingUsually temporaryRelaunch. Send us the build ID if it repeats

If you built your site with Lovable or a similar tool, check that the address still works. Renaming a project can change it, and the build then points to a page that no longer exists.

The app won't install

  • Android says the app isn't installed: you probably have the free test app on the phone. It was signed with a temporary key, so Android can't replace it. Uninstall it first.
  • Android blocks the file: allow your browser to install apps when prompted ("Install unknown apps").
  • The download link no longer works: links last 30 days. Open the project page to get a new one.
  • The test build on iPhone: it's Android only. iOS comes with a paid plan.

The app shows a blank page

  1. Open your URL on a phone

    Use the phone's browser. If the site is blank there too, the problem is on the site.

  2. Check the address

    It must be HTTPS and public. A page behind a password or an IP filter stays blank.

  3. Check the speed

    A blank moment on first launch is your site loading. On iPhone it appears right after the launch screen.

An address bar shows at the top

  • In the free test build: this is normal. It goes away in a paid build.
  • In the Android Build (Web): your site doesn't serve the right assetlinks.json. Follow Deep links and check it with the validator.

Only your domain and its subdomains stay in the app. Anything else opens the system browser. To keep a domain inside, add it to Extra domains in your project, then rebuild. Never add Google's sign-in domain.

Google sign-in shows an error

An error such as disallowed_useragent means sign-in opened inside the app. Follow Sign-in. If sign-in works but you come back signed out, check that your provider allows your app's return address.

window.saastostore is undefined

  • You're in a normal browser, where it doesn't exist.
  • It's an Android Build (Web), which has no bridge. Use the Native build.
  • The plugin was added after your last build. Launch a new one.
  • The page is on another domain. The bridge only exists on your app's domain and subdomains.
  • Your code runs before the bridge has loaded. Use whenSaasToStore, from the JavaScript bridge reference.

A plugin doesn't seem to do anything

Plugin calls never throw. Log the result: error tells you what happened. not_available means the device can't do it, not_supported means the system doesn't allow it, and invalid_argument means a value is in the wrong format.

const r = await window.saastostore?.haptics?.selection();
console.log(r); // { ok: true } or { ok: false, error: "not_available" }

Still stuck?

Write to hello@saastostore.com with your build ID, which is on the build's page, and what you tried.

Frequently asked questions

Google says 'Version code has already been used'. What do I do?+

Your app already has a higher version on Google Play, usually from another tool. Enter the highest version code in 'My app is already on Google Play' in your project, then launch a new build.

Google refuses my bundle because of the wrong signing key. Why?+

The app was first published with another key. Download the certificate from 'My app is already on Google Play', and send it to Google with Request upload key reset. Google tells you when it's valid.

Publishing fails with 'Package not found'. Why?+

Google Play only accepts uploads for an app that already exists. Create the app in the Play Console with the same package name, upload the first bundle by hand if Google asks, then publish from SaasToStore.

Apple refused my app under guideline 4.2. What can I do?+

Apple refuses apps that feel like a repackaged website. Add native navigation and useful plugins, hide your site's web header and footer, and show in your review notes what the app adds.

Google asks for 12 testers. Is this normal?+

Yes, for many personal accounts created after November 2023. Read our guide on the 12 testers requirement.

See it with your own site

Paste your URL and get a free Android test build on your phone in about 3 minutes.

Publish now

Keep reading