> ## Documentation Index
> Fetch the complete documentation index at: https://docs.newly.app/llms.txt
> Use this file to discover all available pages before exploring further.

# Preview vs builds: which one am I looking at?

> Newly gives you three ways to see your app while you build. They don't all update at the same time, and knowing which one you're looking at clears up most 'it works here but not there' confusion.

Ever added something, watched it appear in the Newly preview, then opened TestFlight and it's just not there? Or had a feature work on your phone but not in the browser preview? You're not doing anything wrong. You're looking at a different copy of your app than you think.

Newly shows you your app in three places while you build. Each one updates at its own speed and behaves a little differently. Here's what each is for.

## The three ways to see your app

### Web preview

The panel on the right side of your project. This is the fastest way to see changes: edit something, save, and it updates right away. No waiting.

Best for: checking layout, wording, your screens, and how you move between them. Anything visual.

One thing to watch: the browser preview runs your app in a little sandbox, and that sandbox handles login slightly differently than a real phone does. So if something tied to your account (adding a member, saving a value, creating a record) gives you a "session expired" error here, don't panic. Try the same thing in the simulator. It almost always just works, and you don't have to change anything.

### Simulator

The iOS and Android tabs in the preview panel. This runs a closer-to-real version of your app, and it still picks up your latest changes as you save.

Best for: anything that needs to behave like a real phone, such as logging in, push notifications, the camera, location, or links that open your app. Much closer to the real thing than the browser preview.

One thing to watch: the Android and iOS tabs don't work quite the same way behind the scenes. Android is usually faster and has fewer things that can go wrong. For the workflow most experienced Newly builders use day to day, see [Recommended dev loop](/guides/recommended-dev-loop).

### Real builds (TestFlight and the app stores)

When you hit **Deploy**, Newly builds the real, finished version of your app. That's what goes to TestFlight, the App Store, and Google Play.

Best for: the actual app your users install. It's also the only version Apple and Google review.

One thing to watch, and this one trips up almost everyone: a build is a snapshot. It captures your app exactly as it was the moment you hit Deploy. Anything you change after that doesn't reach TestFlight on its own. To see new changes there, hit Deploy again and upload the new build.

This is the number one reason for "the AI fixed it, so why don't I see it in TestFlight?"

## The three side by side

|                              | Web preview              | Simulator                   | Real build                       |
| ---------------------------- | ------------------------ | --------------------------- | -------------------------------- |
| **Where it runs**            | In your browser          | In the iOS/Android tab      | On a real phone, from the stores |
| **How fast it updates**      | Instantly, when you save | When you save               | Only when you Deploy again       |
| **Login on iOS**             | Sometimes glitchy        | Works like a real phone     | Works like a real phone          |
| **Best for**                 | Layout and wording       | Testing real-phone behavior | Shipping to users                |
| **When your changes appear** | The moment you save      | Next time it reloads        | After your next Deploy           |

## Common confusions, explained

<AccordionGroup>
  <Accordion title="The feature shows up in the Newly preview but is missing from TestFlight">
    Your TestFlight version was built before you added the feature, so it doesn't have it yet. Go to the Deploy tab and build again. The new build includes your latest work, and TestFlight will show it once you upload it.

    Quick check: open your project files and confirm the feature is actually in your code. If it is, this is just an old TestFlight version, not a bug.
  </Accordion>

  <Accordion title="'Session expired' when I add a member or save in the web preview, but it works in the simulator">
    The browser preview handles your login in a way that some actions can't always read back. Try the same thing in the simulator or on your phone. It should work, and you don't need to change anything.

    If you'd also like it to work in the browser preview, ask the AI to check whether you're signed in instead of re-reading your login on every request.
  </Accordion>

  <Accordion title="The app works in the Newly preview, but iOS shows 'Welcome to Newly, your app is currently building...'">
    This usually means the AI updated your Android and web screens but missed the matching iOS ones. Ask the AI to update the iOS version of your app so it matches what you see on web and Android.
  </Accordion>

  <Accordion title="I made a change, the preview shows it, but Expo Go on my phone is still on the old version">
    Force-close the Expo Go app and scan the QR code again. Expo Go can hold onto the old version, and a fresh scan picks up the new one.
  </Accordion>
</AccordionGroup>

## Rule of thumb

* Browser preview for quick visual changes.
* Simulator (Android by default) for everyday building and feature work.
* The iOS tab when you need to check something specific to iPhone.
* A real build (Deploy) for anything going to actual users.

When something looks off, ask yourself one question first: which version am I looking at, and does it actually have the changes I just made?
