# Cloning an App

Use this guide to create a copy of an existing app in your workspace.

Cloning an app is useful when you want to:

* Reuse an existing setup
* Create a template for future projects
* Test changes safely without affecting the original app
* Build similar apps for different teams, clients, or workflows

### Clone an app

**To clone an app:**

1. **Locate the App**:

* Go to your **Dashboard** at **portals.noloco.io**.
* Find the tile of the app you want to clone.

2. **Begin the Clone**:

* Hover over the app tile and click on the **menu button** (three vertical dots).
* Select **‘Clone’** from the menu.

3. **Choose the Target Workspace**:

* In the dropdown, select the current workspace or any workspace where you want the app to live
* Click on the **Create my new app** button.

{% @arcade/embed url="<https://app.arcade.software/share/SGIpDBYcs5zWBGlXxlmy>" flowId="SGIpDBYcs5zWBGlXxlmy" %}

Noloco creates a separate copy of the app. You can work on the new app without changing the original.

### When to Clone an app

Cloning works well when you need to:

* Create a client-specific version of an existing app
* Start a new app from a setup you already know works

### After cloning

After you create the clone, review the new app before sharing it:

* Update the app name and branding
* Review pages, permissions, and automations
* Test the full app flow

### Clone vs transfer

Use cloning when you want to keep the original app and create a separate copy.

Use a transfer when you want to move an app to another workspace or owner.

See [Transferring an app](/account/transferring-an-app.md).

### Tips

* Use clear names for production and test apps.
* Clone before making large changes.
* Review the cloned app fully before inviting users.

#### **Cloning an app but replacing the data source using a cloned base**

You can clone both the app and the base when you want the same setup with separate data. This is a common setup for client portals, internal team workspaces, and repeatable app rollouts.

{% hint style="info" %}
This will only work when you have 1 Airtable base connected to your app
{% endhint %}

### When to use this approach

Use this approach when:

* Each app should have its own copy of the data
* You want to reuse the same pages, views, and permissions

### Before you replace the data source

Make sure the cloned base keeps the same:

* Tables
* Field names and field types
* Linked record structure

This matters because your app layout depends on that schema.

If tables or fields change, some views, forms, filters, automations, or permissions may need to be updated.

### Replace the data source in the cloned app

1. Clone your base in Airtable or your external data source.
2. Clone the app in Noloco.
3. Choose `Replace`while cloning

{% @arcade/embed flowId="JFEzLssk8ZSD0duRTaFA" url="<https://app.arcade.software/share/JFEzLssk8ZSD0duRTaFA>" %}

### What to check after connecting the cloned base

Check these areas in the cloned app:

* Views and filters
* Forms and record pages
* User roles, permissions, and automations

If the cloned base matches the original schema, the app should need only minor changes.

### When to start from your data instead

If the cloned base has a different schema, it is usually better to create a new app from that data source.

That gives Noloco a clean starting point and avoids fixing broken layouts later.

See [Start with your data](/quickstart/start-with-your-data.md) and [Airtable](/data/airtable.md).

{% hint style="info" %}
Keep the schema consistent across each cloned base if you want the same app structure to keep working.
{% endhint %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://guides.noloco.io/account/cloning-an-app.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
