Duplicate a form
Open the owner Dashboard and choose Selling if needed. In My Forms, find the owned form, choose its three-dot More actions button (More in list view), then Duplicate. Do not open Edit form; Duplicate is in the form card's menu. The copy receives a new title and public slug, starts inactive and public, and copies the blocks, theme, header and background image references, catalog, shipping options, promotion definitions, seller document profiles, thank-you and confirmation settings, order-edit settings, review visibility, and the maximum-submissions and maximum-items-sold values.
Duplication does not copy orders, view count, live promotion usage or budget counters, the form password or invite list, the invite-only Orders per invited email allowance, open and close dates, Google Sheets or Airtable connections, or account-level provider credentials. Product-block checkout limits remain with the copied blocks. Review every copied variant's Stock and Low Alert before publishing; do not assume the copy retains a finite quantity. Treat the duplicate as a new public and operational boundary, not a synchronized branch of the original.
Reuse blocks with a template
Open Dashboard → Selling, find the form under My Forms, and choose Edit form. In the builder, open Settings → Tools, click Save as Template, enter a template name, and confirm. This records a reusable builder template.
To use one in an existing form, open that form's Edit form → Settings → Tools → Load Template, choose the template, and confirm the block replacement. The current form's products remain in place. Built-in choices include Standard Order Form, Simple Product Form, and Contact Form. Review the result in Preview, then choose Save changes to make the new layout live.
Templates are useful for repeated layouts and question sets. They are not complete form clones or backups: verify products, prices, shipping, promotions, appearance, email, access, limits, schedule, and integrations separately.
Download a form backup
Open Dashboard → Selling → My Forms, choose the form's Edit form button, then open Settings → Tools → Download Backup. Your browser downloads a version-5 JSON file. It uses the current editor state, including unsaved edits; downloading it does not save those edits. If you want to back up the version you are about to make live, finish Save changes successfully before downloading.
The file contains the title and description, blocks, products, shipping options, Coupon and Sale definitions, theme and seller-document settings, payment instructions, thank-you and confirmation settings, and order-edit settings.
It does not contain order history, promotion usage or budget counters, the public slug or active status, form passwords or invite lists, open or close schedules, form-level maximum-submissions or maximum-items-sold values, integration connections, or buyer access state. Product-block checkout limits remain in the saved blocks. Product and shipping images are referenced by URL instead of being bundled as image files; uploaded header and page-background image fields are not part of the current backup payload.
A backup can contain payment destinations and private business configuration. Store it securely, preferably encrypted; do not email it casually or attach it to a support ticket. For an order and account archive, use Export or delete account data and contact support.
Restore with care
Only the form owner can run a complete backup restore. The control is under Dashboard → Selling → My Forms → Edit form → Settings → Tools → Load backup into editor. Read the cautions below before using it.
Load backup into editor loads supported backed-up blocks, products, shipping, Coupons, Sales and settings into the open editor for review. It does not change the saved form until Save changes succeeds. Promotion definitions receive new identities when committed; their usage and budget counters restart at zero.
Every backup-recreated variant starts with its own count of 0; shared connections are not restored. Review Stock and Low Alert before committing and reopening ordering. A file without promotions prepares removal of the current Coupons and Sales, so review the warning carefully.
Download a backup of current work before loading a replacement. Official version-1 through version-5 files are supported. Preparation validates the file and maps promotion targets into its product and variant identities. If another Save remains unconfirmed, resolve it first. Loading or abandoning a prepared replacement does not publish it.
Click Load backup into editor, select the intended JSON file, read the replacement warning and preview the prepared result. Choose Save changes when ready. After success, reload the public link and verify products, prices, stock, shipping, promotions, payment instructions, email, access, limits, schedules and mobile layout. Configure separate provider connections through their dedicated controls.
For saved history, open Publish → Share Link → Published versions and choose Restore version. Review the loaded content, then choose Save changes to commit it. Surviving variants keep live stock; recreated variants start at 0 without shared connections. History and backup loading both require current editing permissions. See Save and restore form changes.
Duplicate keeps finite or Unlimited own stock. A copied shared variant starts at own count 0 without its shared connection. Older backups without a stock-type marker are interpreted as own-stock descriptions, but backup restore still starts all recreated variants at 0.
Unavailable promotion targets
Deleting a product or variant keeps existing promotion references. Duplicate preserves that behavior: unavailable targets continue to match nothing, and remaining targets point to the copied products and variants. You do not need to edit those promotions before duplicating the form. Backup restore also preserves unavailable promotion targets without requiring you to remove them first. See Change promotion targets safely.
Fresh P&L costs are separate from form backups and templates. Restoring an older form copy does not restore its retired unit-cost fields or seed the new workspace.