How to Generate Website Previews for a Squarespace Portfolio
Preview a Squarespace portfolio as visitors see it, then share the right link for a draft, private trial site, or published page.
To generate a visitor-like preview of a Squarespace portfolio, save your changes, exit the editor, and open the full-screen preview for your site version. Check desktop and mobile layouts, then use a private browser window to inspect the page as a visitor would. To share it, choose the link that matches what the reviewer needs: a draft Preview URL for one unpublished page, a site-wide password for a private trial site, or the visitor-facing URL for a published or Not linked page. Never send a logged-in URL containing /config.
1. Open the full-screen preview
The preview controls differ between Squarespace 7.1 and 7.0. Use the workflow for your site version.
Squarespace 7.1
- Save your edits.
- Exit the editor.
- Select the preview icon in the upper-right corner.
- Review the page in full-screen preview. Animations play in the 7.1 preview, and closing the editor hides its editing toolbar so you can interact with the content more like a visitor.
Squarespace 7.0
- Save your edits and return to the main menu.
- Hover near the top-left of the site preview.
- Select the arrow to enter full preview.
For the current interface details, see Squarespace’s preview instructions.
2. Check the visitor experience across devices
- Inspect desktop and mobile layouts. Use the device view controls to check how the design adapts. Squarespace’s app can also be used to check the site on mobile.
- Open a private or incognito window. This is a useful visitor check, particularly for embedded code that may not display while you are logged in.
- Check the actual share URL. A preview that works in your logged-in session may not be accessible to a client. Test the link and any password in a private window before sending it.
- Review wider layouts if needed. You can zoom out in the browser to inspect a wider view. Restore browser zoom to 100% before editing.
For a portfolio, open the landing page and several project sub-pages. If a portfolio page is the homepage, Squarespace notes that sub-page URLs can omit the portfolio page slug. Test the final URL you plan to share rather than assuming it follows the usual path. Portfolio pages are available in Squarespace 7.1; see the official portfolio site guide.
3. Choose the right way to share the preview
| What the reviewer needs | Use this | What to send |
|---|---|---|
| One unpublished page | Draft sharing, where available | The draft Preview URL and its password |
| The whole private trial site | Site-wide password protection | The built-in domain without /config and the shared site password |
| A published page | Visitor-facing page URL | The page URL copied from a private window |
| A page in Not linked | Full preview and its visitor-facing URL | The address-bar URL from full preview, tested privately |
Share one unpublished page with draft sharing
Draft sharing is available for eligible plans and pages. Open the draft’s settings, enable sharing, set a password, and copy the Preview URL. Send the reviewer both the URL and password. Sharing permissions depend on the reviewer’s role: website managers and administrators can configure sharing permissions, while eligible editors can share a URL with other site contributors. An outside reviewer may need a manager or administrator to configure access.
After review, publishing the draft can replace the live page. Squarespace warns that this publish-and-replace workflow cannot be reverted to the original page through that workflow. If the draft contains a form block, reconnect its storage before publishing if the form needs to work. See the official guide to drafting pages.
Share a private trial site with a site-wide password
Trial sites are private by default. To let someone browse the site as a visitor without giving them editing access, set a site-wide password and share the built-in domain without /config, along with the password. Squarespace says visitors can test the site, including on mobile, while it remains hidden from search engines with password protection enabled. Follow its trial site sharing guide.
Site Availability also supports public, password-protected, or hidden states. Publishing publicly requires a paid subscription. A public site can be accessed through connected domains and may be indexed by search engines. A site-wide password is shared by visitors; use contributor permissions when individual access or editing rights are needed. Review the publish or hide instructions before changing availability.
Share a published or Not linked page
For a page already accessible to visitors, copy its URL from an incognito or private window. For a page in the Not linked section, open it while logged in, enter full preview, then copy the address-bar URL. Not linked means the page is omitted from navigation; it does not mean the page is password-protected.
Do not copy a logged-in editing URL containing /config. The recipient may be sent to a login screen. If you share a built-in Squarespace domain while the site has a custom domain, Squarespace instructs you to substitute the custom domain before sending the link. See Squarespace’s URL sharing guide.
4. Generate a screenshot of the preview
If the goal is a visual review or a static image to attach to feedback, capture the visitor-facing preview after choosing the sharing method above. For a manual browser capture, open the tested share URL, set the intended viewport, and use your browser’s screenshot or print controls. This can be enough for a quick review, but it does not automatically remove cookie banners or popups, and the result may differ if the page has not finished loading or lazy-loaded images have not appeared.
Automate a capture with Playwright
For repeatable previews from a development workflow, Playwright can open the page, wait for it to settle, and save a screenshot. Install Playwright and its Chromium browser with npm install -D playwright and npx playwright install chromium. Set PREVIEW_URL to the visitor-facing URL that the recipient should see. If the site is password-protected, this sample pauses for you to enter the password in the opened browser; do not put a shared password in source control.
import { chromium } from 'playwright';
const url = process.env.PREVIEW_URL;
if (!url) throw new Error('Set PREVIEW_URL to the Squarespace preview URL');
const browser = await chromium.launch({ headless: false });
const page = await browser.newPage({ viewport: { width: 1440, height: 1000 }, deviceScaleFactor: 1 });
await page.goto(url, { waitUntil: 'domcontentloaded', timeout: 60000 });
console.log('If prompted, enter the site or draft password in the browser.');
await page.waitForTimeout(10000);
await page.screenshot({ path: 'squarespace-preview.png', fullPage: true });
await browser.close();
This is a starting point, not a guarantee that every animation, embedded service, or lazy-loaded image has finished. Adjust the wait for the page you are capturing. Avoid bypassing access controls: use the authorized preview URL and password.
Or skip the browser setup
ScreenshotNeo is a website screenshot API and MCP server for developers. One GET request can return a PNG, JPEG, WebP, or PDF. See the ScreenshotNeo site and API documentation for request options.
curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp
import requests
r = requests.get("https://api.screenshotneo.com/v1/shot", params={"access_key": "YOUR_API_KEY", "url": "https://stripe.com"}, timeout=90)
open("shot.webp", "wb").write(r.content)
const q = new URLSearchParams({ access_key: 'YOUR_API_KEY', url: 'https://stripe.com' });
const res = await fetch(`https://api.screenshotneo.com/v1/shot?${q}`);
Replace the example URL with the visitor-facing Squarespace preview URL. For a password-protected preview, configure the required credentials using the supported request options in the docs. ScreenshotNeo removes cookie banners, newsletter popups, and chat widgets before capture; bot checks, blank pages, failed loads, and cache hits are never billed. Its MCP server provides screenshot tools for AI agents, including Claude and Cursor. The free plan includes 1,000 screenshots a month with no card; paid plans start at $5 for 3,000 screenshots. Sign up for 1,000 free screenshots a month, no card required.
Troubleshooting
| Problem | Likely cause | Fix |
|---|---|---|
| The recipient sees a login screen | You sent a logged-in editing URL, often one containing /config. |
Copy the visitor-facing URL from a private window, or use the draft Preview URL or trial-site password workflow. |
| A draft link does not open for an outside reviewer | Draft sharing is off, a password is missing, or the reviewer’s role is not covered by the sharing permissions. | Ask a manager or administrator to configure sharing, enable draft sharing, set a password, and send both the URL and password. |
| A Not linked page is mistaken for a private page | Not linked only removes the page from navigation. | Use a password-protected draft or site if access must be restricted. Otherwise, test the visitor URL privately before sharing. |
| The preview differs from the editor | The editor view includes controls or a logged-in state, or embedded code behaves differently while logged in. | Exit the editor and test the page in a private window. Check the device view the recipient will use. |
| A portfolio sub-page URL returns the wrong page | A homepage portfolio can have sub-page URLs that omit the portfolio slug. | Open the project from the homepage and copy the actual URL; test it before sending. |
| A form stops working after publishing a draft | Draft form-block storage may need to be reconnected. | Reconnect the form’s storage on the draft before publishing, then verify the live form. |
| A screenshot is missing images or shows a transient state | Lazy loading, animations, or external embeds may not have settled before capture. | Wait for the relevant content, scroll through the page if capturing manually, or increase the automation wait and capture again. |
| A site becomes visible to the public unexpectedly | Site Availability was changed to public instead of using a restricted preview. | Set the intended availability and access method before sharing; remember a public site may be indexed. |
Performance, reliability, and cost
For a one-off check, Squarespace’s own preview is the shortest path and has no separate screenshot-tool setup. A browser automation script is useful when you need the same viewport and output repeatedly, but each run depends on page loading, network conditions, external embeds, and the chosen wait strategy. Keep access credentials out of scripts committed to a repository, and use a URL and access method that the reviewer is allowed to use.
A static screenshot is a snapshot, not a substitute for checking navigation, forms, responsive behavior, or password access interactively. For automated image capture, large full-page pages and slow external resources can increase capture time. With ScreenshotNeo, the response includes page-verdict and billing headers, and only clean shots are billed; bot checks, CAPTCHAs, blank pages, timeouts, failed loads, and cache hits cost nothing. Its plans are Free: 1,000 shots/month; Starter: $5 for 3,000; Growth: $15 for 15,000; Pro: $39 for 60,000; Scale: $99 for 250,000; Business: $249 for 1,000,000. Yearly billing gives two months free, and every feature is on every plan.
FAQ
Can someone preview my portfolio without becoming a site contributor?
For a single eligible unpublished page, use draft sharing with its Preview URL and password. For a trial site, use a site-wide password. These methods provide visitor-like access without editor access.
Does “Not linked” keep a page private?
No. It removes the page from site navigation, but does not itself password-protect the page.
Should I send a preview link or a screenshot?
Send a link when the reviewer needs to interact with the page or check mobile behavior. A screenshot is useful for static visual feedback, but cannot demonstrate working links or forms.
Can I share a draft and then replace the live page with it?
Squarespace supports publishing a draft to replace the live page, but its documented workflow cannot revert to the original page. Check form storage and other page behavior before publishing.


