# Welcome to Maker

Maker is an AI-powered platform that converts plain-language prompts into fully coded, production-ready webpages and front-end apps in seconds- right in your browser.

![Dashboard screenshot](/files/BdDg82IGn8KT3adjaP74)

### How it Works

{% stepper %}
{% step %}

#### **Describe it, generate it**

Outline your idea in plain language and watch Maker scaffold it in seconds.&#x20;
{% endstep %}

{% step %}

#### **Instant code creation**

Generate webpages and front-end apps
{% endstep %}

{% step %}

#### **Collaboration**

Share a project link; collaborate with teammates.
{% endstep %}

{% step %}

#### **One-click deploy + custom domain**

Host, SSL, and DNS configured automatically.
{% endstep %}
{% endstepper %}

***

### Quick Start

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-target data-type="content-ref"></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Getting Started</strong></td><td>Step-by-step guide for a simple introduction to basic workflow.</td><td><a href="/pages/fXybaIrQUxxm7pEbZ0Bz">/pages/fXybaIrQUxxm7pEbZ0Bz</a></td><td><a href="/files/GoOz6gcv2Z36n2o2uuT9">/files/GoOz6gcv2Z36n2o2uuT9</a></td></tr><tr><td><strong>FAQ</strong></td><td>Frequently asked questions with clear, concise answers.</td><td><a href="/pages/j1Q2f9f4oHQinL1AJ2rW">/pages/j1Q2f9f4oHQinL1AJ2rW</a></td><td><a href="/files/wSENEfG9mCJ4sdg5yFLh">/files/wSENEfG9mCJ4sdg5yFLh</a></td></tr><tr><td><strong>Plans &#x26; Billing</strong></td><td>Understand your subscription options and manage billing easily.</td><td><a href="/pages/UYTHsLqaUVYrelYPwX3l">/pages/UYTHsLqaUVYrelYPwX3l</a></td><td><a href="/files/hZrIZI5PovGFhNqtbA2b">/files/hZrIZI5PovGFhNqtbA2b</a></td></tr><tr><td><strong>Credits</strong></td><td>Learn how credits work, how they're used, and how to get more.</td><td><a href="/pages/N6c8aOJNpFxt0kMgirAR">/pages/N6c8aOJNpFxt0kMgirAR</a></td><td><a href="/files/I43490E3wTjOn5IEjFKG">/files/I43490E3wTjOn5IEjFKG</a></td></tr><tr><td><strong>Prompting</strong></td><td>Master the art of writing prompts to get the best results from AI.</td><td><a href="/pages/nfDbhGf2klWthDoZ83p0">/pages/nfDbhGf2klWthDoZ83p0</a></td><td><a href="/files/mIMTd1lVVlezkXr3liHm">/files/mIMTd1lVVlezkXr3liHm</a></td></tr><tr><td><strong>Best Practices</strong></td><td>Discover expert tips to improve your workflow and project quality.</td><td><a href="/pages/LF1wRgOAxADpeaxrLCxE">/pages/LF1wRgOAxADpeaxrLCxE</a></td><td><a href="/files/88MK0FJI9eI2mstS8XEc">/files/88MK0FJI9eI2mstS8XEc</a></td></tr><tr><td><strong>Tutorials</strong></td><td>Step-by-step video guides to help you make the most of our tools.</td><td><a href="/pages/M7rJli3sBuE5ReuqlhHT">/pages/M7rJli3sBuE5ReuqlhHT</a></td><td><a href="/files/6i0y3al7zpZnlNlFZNi0">/files/6i0y3al7zpZnlNlFZNi0</a></td></tr><tr><td><strong>Troubleshooting</strong></td><td>Fix common issues with simple, effective solutions and walkthroughs.</td><td><a href="/pages/uA5i8P9yteYSoCttTMCb">/pages/uA5i8P9yteYSoCttTMCb</a></td><td><a href="/files/xZRtWzQbMFvCuocNQzai">/files/xZRtWzQbMFvCuocNQzai</a></td></tr></tbody></table>

***

### Key Features

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Figma</strong></td><td>Learn how to import and sync your Figma designs seamlessly.</td><td><a href="/files/0BfnFnIQfJdTTW2Z3CsZ">/files/0BfnFnIQfJdTTW2Z3CsZ</a></td><td><a href="/pages/BNEpWfcHB7IcIIvmwSJS">/pages/BNEpWfcHB7IcIIvmwSJS</a></td></tr><tr><td><strong>Select to Edit</strong></td><td>Quickly target any element in your live preview for focused edits.</td><td><a href="/files/YCf9yonX19leofTKOUTl">/files/YCf9yonX19leofTKOUTl</a></td><td><a href="/pages/jvd8algSQcx7aCup3gsM">/pages/jvd8algSQcx7aCup3gsM</a></td></tr><tr><td><strong>Brand Styles</strong></td><td>Apply your brand’s colors, fonts, and styles globally.</td><td><a href="/files/xfbLlVZhNiIrzcRC85wZ">/files/xfbLlVZhNiIrzcRC85wZ</a></td><td><a href="/pages/3GLFgKEAf2mgBMxLBmcM">/pages/3GLFgKEAf2mgBMxLBmcM</a></td></tr><tr><td><strong>Project Remix</strong></td><td>Instantly duplicate and customize existing projects to save time.</td><td><a href="/files/Hh6IZkwAZAo7kY9F6FWl">/files/Hh6IZkwAZAo7kY9F6FWl</a></td><td><a href="/pages/EbD2M7z12NwCFGoqspS1">/pages/EbD2M7z12NwCFGoqspS1</a></td></tr><tr><td><strong>Deploy</strong></td><td>Make your Maker project available to the world—or keep it private.</td><td><a href="/files/3lCkB4sNSTOrKydCxftk">/files/3lCkB4sNSTOrKydCxftk</a></td><td><a href="/pages/GmNQNKzIHk1sYczHfdR1">/pages/GmNQNKzIHk1sYczHfdR1</a></td></tr><tr><td><strong>Hosting &#x26; Updates</strong></td><td>Secure, fast hosting with automatic updates and versioning.</td><td><a href="/files/DDeuJ6duVua2Be8SP8OP">/files/DDeuJ6duVua2Be8SP8OP</a></td><td><a href="/pages/TZqZ2wmtxYbtN1XyJzTY">/pages/TZqZ2wmtxYbtN1XyJzTY</a></td></tr></tbody></table>

***

### Support

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Community Support</strong></td><td>Join our community forum to ask questions, share ideas, and get help from peers.</td><td><a href="/files/j1mBhhMSup2QKNpD9RtA">/files/j1mBhhMSup2QKNpD9RtA</a></td><td><a href="https://discord.gg/2JYv9xK6">https://discord.gg/2JYv9xK6</a></td></tr><tr><td><strong>Support Docs</strong></td><td>Check out our support docs—packed with best practices, handy tips, and easy-to-follow video tutorials.</td><td><a href="/files/fEXhAYaIuhzpbkAdqkxH">/files/fEXhAYaIuhzpbkAdqkxH</a></td><td><a href="/pages/30Hg9Pr5kiy9SEqnWwlp">/pages/30Hg9Pr5kiy9SEqnWwlp</a></td></tr><tr><td><strong>Priority Support</strong></td><td>Get fast, dedicated assistance for urgent issues and premium accounts.</td><td><a href="/files/oBLu5OAuCWxBI3p2tT4w">/files/oBLu5OAuCWxBI3p2tT4w</a></td><td><a href="/pages/qRI0mlAnmWzsjrL9qRv3">/pages/qRI0mlAnmWzsjrL9qRv3</a></td></tr></tbody></table>

***

### Learn More

<table data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="files"></th><th data-hidden data-card-target data-type="content-ref"></th></tr></thead><tbody><tr><td><strong>Website</strong></td><td>Explore our main website to learn about our mission, features, and roadmap.</td><td><a href="/files/RyWY2O16TFWQkp1axej7">/files/RyWY2O16TFWQkp1axej7</a></td><td><a href="https://maker.co">https://maker.co</a></td></tr><tr><td><strong>Glossary</strong></td><td>Find definitions of key terms and concepts used throughout the platform.</td><td><a href="/files/W7uThHzL4eCWRO5PZC6n">/files/W7uThHzL4eCWRO5PZC6n</a></td><td><a href="/pages/yJVgjoPATOyS1dGvdHd6">/pages/yJVgjoPATOyS1dGvdHd6</a></td></tr><tr><td><strong>Product Announcements</strong></td><td>Stay up to date with the latest feature releases and product news.</td><td><a href="/files/jJll0zynLSqWOYXvC5Kx">/files/jJll0zynLSqWOYXvC5Kx</a></td><td><a href="https://discord.gg/9ratFHfEGp">https://discord.gg/9ratFHfEGp</a></td></tr></tbody></table>

***

### Next Steps

1. Go to [**Quickstart** ](/introduction/quickstart)to spin up your first “Hello, world” project.
2. Visit [**Community Remixes**](/community/community-remixes)**.**
3. [**Support**](/community/support-and-contact) to ask questions.

***


# FAQ

Frequently asked questions about Maker

### Most Commonly Asked

<details>

<summary>What is Maker?</summary>

Maker is a browser-based, AI-powered platform that converts plain-language prompts into fully coded, production-ready webpages and front-end apps in seconds- right in your browser, with zero installs or configuration.

</details>

<details>

<summary>Do I need to know how to code?</summary>

No. Describe your idea in plain English, and Maker automatically builds the components and UI for you—no coding skills required.

</details>

<details>

<summary>How much does Maker cost?</summary>

* **During your trial:** 3,000 credits for the entire 14-day free trial
* **Pro** (starting at $30/mo): 10,000 credits/month.
* **Team**(starting at $40/mo): 10,000 credits/month
* **Max:** (starting at $200/mo): 50,000 credits/month
* **Enterprise:** custom

See plan details [here](/introduction/plans-and-billing).

</details>

<details>

<summary>Can I import my existing Figma designs?</summary>

Yes- see the **Figma Integration** guide. Link your Figma file to auto-generate the layout that matches your mocks. See details [here](/features/figma).&#x20;

</details>

<details>

<summary>Where can I report bugs or request features?</summary>

Head to **Issue Reporting** under **Stay Connected**, or drop into our community Discord (link in [**Support & Contact**](/community/support-and-contact)).

</details>

<details>

<summary>What happens when I click Publish on my project?</summary>

Publishing does three things:

1. **Creates a shareable project link** – Your Maker project is saved on our servers and gets its own URL. You can leave it *Private* (only you and invited collaborators can open it) or flip it to *Public* so anyone with the link can view it.
2. **Does&#x20;*****not*****&#x20;put the project on your website** – Hitting *Publish* alone doesn’t make anything appear on your site. For that, you need to **embed** the project with the embed code we provide.
3. **Starts version history** – From the first time you publish, every later publish becomes a new version that you can roll back to at any time.

> **Tip:** Once the project is embedded, each subsequent *Publish* instantly pushes your latest changes to the live site—no extra steps required.

</details>

<details>

<summary>What support options are available?</summary>

* **Community Forum**: open to all users
* **In-App Support**: included with Pro and Team

</details>

<details>

<summary>Does Maker support product catalog integration?</summary>

Yes, this feature is limited to our Enterprise clients. To include product details, add them via a prompt or paste them manually.&#x20;

</details>

<details>

<summary>How do I remove a Maker project from my website?</summary>

To remove a project, remove the Maker embed code from the page where it was added. If you added the page via our custom domain settings, you can disconnect the domain in the project.&#x20;

</details>

<details>

<summary>What’s the difference between Public and Private projects?</summary>

* **Public projects** are discoverable and appear on Maker's **Community** page.&#x20;
* **Private projects** are hidden from the Maker's Community page and general browsing.&#x20;

</details>

<details>

<summary>Will our Maker preview pages get indexed by Google?</summary>

It’s unlikely since they aren’t linked anywhere publicly. If you’d like to be completely safe, you can ask the Maker to add `noindex` and `nofollow` meta tags to that project via a prompt. That ensures search engines will not index it or follow links from it, even if they do hit the URL.

</details>

<details>

<summary>If we add <code>noindex</code> to the preview page, will that affect the content when it’s embedded on the client site later?</summary>

No, `noindex` only applies to the preview page URL where it’s set. When the content is embedded on your domain, that page’s own indexing settings determine whether it can be indexed.

</details>

<details>

<summary>My project looks different in Maker than it does on my live site. How do I fix that?</summary>

If your project looks different once it's live, it's usually a CSS conflict between Maker and your site's existing styles. The easiest fix is to use the iframe embed option. This keeps the two environments isolated so your Maker project renders exactly as intended.

</details>

### Usage & Limits

<details>

<summary>Are there usage limits?</summary>

Each plan includes a credit limit that you can track in real time on the dashboard. If you run out, you can upgrade to a higher plan for a new full allowance after the upgrade payment succeeds

</details>

<details>

<summary>What happens if I upgrade mid-cycle?</summary>

Maker refunds your unused current-plan credits at the rate you paid for them, then charges the full new-plan price minus that refund. After payment, your billing cycle restarts and the new plan's full credit allowance becomes available. If payment is still due, the new allowance does not start.

</details>

<details>

<summary>What happens if I downgrade?</summary>

If your current invoice is paid, the lower plan starts on your next billing date. Your current plan, features, and credits remain unchanged until then, and there is no mid-cycle refund.

If you have an unpaid invoice, an eligible switch to a cheaper plan may replace it with a new invoice for the cheaper plan. Credits remain unavailable until the replacement invoice is paid. Upgrades are blocked while an invoice is unpaid.

</details>

### General Account & Workspace

<details>

<summary>Can I invite my teammates?</summary>

Plan admins can invite additional team members. Go to **Manage > Team Settings** to add other team members. Everyone in the workspace will have access to the shared team.

</details>

<details>

<summary>Can we work on the same project at once?</summary>

No. Maker does not support real-time collaboration.

</details>

### Working with images, videos and documents in Maker

<details>

<summary>Can Maker produce images or videos?</summary>

Yes. Maker has a built-in image and video generation tool. Click any image in your project, select Generate, and choose whether you want to create an image or a video. You can write your own prompt or click Describe to have Maker generate one based on the selected image. Each generation uses credits, and the cost depends on the model and number of variants you choose. See the \[[Image/Video Generation](/features/image-video-generation)] page for full details.

</details>

<details>

<summary>What kinds of images can I upload to Maker?</summary>

You can upload:

* `.jpeg`
* `.png`
* `.webp`

📏 *Size guidelines:*

* Max file size: **5MB per image**
* Recommended dimensions: **1000x1000 px or larger** for best clarity. Avoid small, low-resolution files.

*Additional tips:*

* Transparency: If your image requires transparency, upload it as **PNG** to prevent unwanted white backgrounds.
* Cropping & aspect ratio: Since Maker is **not** an image‑editing tool, upload the image already cropped and sized exactly as you want it displayed. This eliminates the need for additional prompts to fix proportions later.

</details>

<details>

<summary>How do I add a video to my project?</summary>

To add a video to the project, paste the public URL where the video is hosted and indicate in the editor where you want the video to appear.

</details>

<details>

<summary>Can I upload a video to my project?</summary>

Video uploads are not allowed. To add a video to the project, paste the public URL where the video is hosted and indicate in the editor where you want the video to appear.

</details>

<details>

<summary>Can I upload documents to Maker?</summary>

Yes, we support uploads as a PDF or TXT file.&#x20;

</details>

<details>

<summary>Can I create a form with Maker?</summary>

Yes, you can use Maker to build the form, but storing the form field on submission needs to happen on your end, whether on your CRM or database, since we don’t store any data.  You can prompt Maker to submit the data wherever you plan to store it. The whole page can be built in Maker, or you can just add the form you built in Maker to your page.&#x20;

</details>

### Working with fonts in Maker

<details>

<summary>Do I need to switch a style guide to change fonts in Maker, or can I just use a prompt to override the current font?</summary>

You don’t need to switch a style guide—just use a prompt in your current project to request a different font.

</details>

<details>

<summary>How does Maker handle custom fonts?</summary>

If it’s a Google Font, you can just mention it in your prompt, and Maker will apply it automatically.

For non-Google custom fonts, direct uploads aren’t supported yet. However, if your font is hosted online (e.g., via a public URL to a `.woff`, `.woff2`, or `.ttf` file), you can include that link in your prompt and ask Maker to use it.

For example:

*“Use the font at this URL: `https://example.com/fonts/MyFont.woff2` for all headings.”*

Support for uploading custom fonts directly is on our roadmap.

</details>

### Maker vs. other AI Builders

<details>

<summary>How does Maker compare to other AI Builders? </summary>

Choose Maker when speed, flexibility, brand fidelity & CMS freedom matter\
If you’re non-technical, or just in a hurry, and need a polished, on-brand web presence today, Maker is the fastest way there. It handles all the heavy lifting so you don’t have to:<br>

* Works anywhere – Export once and plug into WordPress, Webflow, Shopify, Contentful, or any headless CMS, no extra tooling required.
* Multiple on-ramps – Paste a Figma link, clone a competitor’s page, drop in a screenshot, or simply type a prompt, Maker instantly converts any of these into live, production-ready code.
* Brand-locked generation – Years of design-to-code R\&D ensure every font, colour, spacing rule, and tone of voice you’ve defined is preserved automatically.
* Zero setup – No repos, servers, or command line; just open Maker in your browser and build.
* Marketing-friendly editing – Swap headlines, images, and colours right in the visual editor, no developer queue.
* Instant deploy – Publish straight to your domain or export clean components the moment you need custom logic.

> Many teams launch with Maker for its speed and pixel-perfect, on-brand design, then hand the exported code to engineers when deeper customisation is required.\
> &#x20;Start with Maker—grow at your own pace.

|                       | **Maker**                                                                                                                                                                                                      | **Other AI builders**                                                    |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------ |
| **Built for**         | Marketers, founders & non-designers who need **beautiful pages or front-end apps, no coding experience required**                                                                                              | Developers who want end-to-end code generation                           |
| **What it gives you** | Production-ready, responsive front-end (HTML / CSS / React) ready to host or export                                                                                                                            | Code suggestions or full-stack scaffolds you still have to wire together |
| **Requires coding**   | **None**                                                                                                                                                                                                       | Yes – you’ll write / review code and hook up services                    |
| **Setup complexity**  | Zero. Open Maker in the browser and start                                                                                                                                                                      | Install tooling, set API keys, configure auth, databases, hosting…       |
| **Ways to start**     | <p>• <strong>Figma link</strong><br>• <strong>Clone any live site</strong><br>• <strong>Screenshot / image reference</strong><br>• <strong>Plain-language prompt</strong> (“Give me a SaaS pricing page…”)</p> | Usually a single workflow (code-first or prompt-to-code)                 |
| **Brand consistency** | **Always on-brand** – AI keeps your fonts, colours, voice & style intact                                                                                                                                       | Generic styling; you tweak the brand fit yourself                        |
| **CMS compatibility** | **Plug-and-play with any CMS** – export as HTML, React or Web Components for WordPress, Webflow, Contentful, headless stacks, you name it                                                                      | Often tied to a specific tech stack; manual integration required         |
| **Best for**          | Shipping marketing sites, landing pages & prototypes lightning-fast, **plus production-ready webpages and front-end apps in seconds**                                                                          | Building, customizing and scaling complex applications                   |
| **Learning curve**    | **None – if you can type a prompt, you can use Maker**                                                                                                                                                         | Steep but powerful – rewards those who already code                      |
| **Output**            | Clean front-end code **or** an instant hosted site you can embed anywhere                                                                                                                                      | Code-base you run, host and maintain yourself                            |

</details>

<details>

<summary>How does Maker handle site speed and page performance?</summary>

Site speed is something we engineer for directly, not something we patch after the fact.

When Maker builds a project, it generates the leanest possible code for that specific project. Every project is purpose-built, meaning it only ships the markup and libraries actually needed to render it. Nothing extra.

This is different from how traditional page builders work. A typical builder loads a universal bundle of components and widgets upfront to cover every possible scenario, most of which any given page never actually uses. That extra weight is what slows builder-based pages down. With Maker, that overhead simply does not exist, whether content is above or below the fold.

The result is pages that consistently score well on Google PageSpeed Insights, which is a strong indicator of real-world performance in production.

</details>


# Account Help

Find answers to common questions about your Maker account—sign-in, billing, security, and more.

<details>

<summary>How do I sign up or sign in?</summary>

* Navigate to <https://ai.maker.co/sign-in> and click **Continue with Google** or enter your email address.
* If it’s your first time, you’ll receive a magic link by email—click it to complete sign-in.

</details>

<details>

<summary>I’m unable to log in. What can I do?</summary>

* Verify you’re using the correct email and password.
* Clear your browser cache or try a different browser.
* If the issue persists, contact our support team for assistance.

</details>

<details>

<summary>How do I reset my password?</summary>

Use the **Forgot Password** link on the login screen. Enter your email address to receive a secure link that will guide you through resetting your password.

</details>

<details>

<summary>I'm not receiving verification or reset emails. What should I do?</summary>

* Check your spam or junk folders—sometimes our messages get misdirected.
* Still nothing? Reach out via live chat or email for help.

</details>

<details>

<summary>How can I update my personal account details?</summary>

Once logged in, go to **Your Profile (in the main menu) → Manage Account**. There you can update your email, contact info, and other preferences.

</details>

<details>

<summary>What should I do if I suspect unauthorized access?</summary>

* Change your password immediately from **Your Profile (in the main menu) → Manage Account**.
* Contact our support team so we can secure your account and investigate.

</details>

<details>

<summary>My account is locked or suspended. What does this mean?</summary>

Lockouts or suspensions happen if we detect security concerns or terms-of-service breaches. You should have received an email explaining why; if not, contact support for clarification and next steps.

</details>

<details>

<summary>How can I permanently delete my Maker account?</summary>

Please reach out to our support team via email or chat. We’ll walk you through the steps to delete your account and data permanently.

</details>

<details>

<summary>How do I upgrade, downgrade, or cancel my plan?</summary>

Go to **Settings → Billing**.

* To upgrade or downgrade, choose the new plan in Maker and confirm the change.
* When an upgrade payment succeeds, Maker refunds your unused current-plan credits at their original rate, charges the full new-plan price minus that refund, restarts your billing cycle, and gives you the new plan's full credit allowance.
* A paid downgrade is scheduled for your next billing date. Your current plan, credits, and features stay unchanged until then.
* If you have an unpaid invoice, upgrades are blocked. An eligible switch to a cheaper plan may replace the unpaid invoice with a new invoice for the cheaper plan; credits remain unavailable until that invoice is paid.
* To cancel, use **Cancel subscription** in Maker or Stripe's **Manage billing** portal and follow the prompts.

After you cancel, your plan continues working until the end of your current billing cycle. Once that ends, you enter a 7-day grace period. During this window, your published sites stay live but you'll have 0 credits. After the grace period, your published projects will be unpublished — they're suspended, not deleted. You can resubscribe at any time to restore everything.

</details>

<details>

<summary>How do I view or update my billing information?</summary>

In **Settings → Billing → Manage Billing**, select **Payment Methods**. Add, remove, or update your credit card and billing address there.

</details>

<details>

<summary>How do I invite team members or collaborators?</summary>

* Go to **Settings.**
* In top right corner you’ll see a team picker. Click on the picker, select your team and click **Manage**.
* Click **Members → Invite**, enter their email, and assign a role (Admin, Member).
* They’ll receive an invitation email to join your organization.

</details>

<details>

<summary>What roles &#x26; permissions are available?</summary>

* **Admin**: full access, including billing and team settings
* Member: create/edit projects, cannot change billing or team

</details>

<details>

<summary>How do I log out?</summary>

Click your profile (in the main menu) → **Sign Out**

</details>

<details>

<summary>What's the difference between Admin, Member, and Viewer roles?</summary>

* **Admin:** Full access, including billing and team settings
* **Member:** Can create and edit projects, but cannot change billing or team settings.&#x20;
* **Viewer:** Can read, comment, reply, and react to comments— they can't approve, reject, or unarchive. Great for stakeholders who should give feedback but not push changes.<br>

</details>

***

### Who do I contact for account-related support?

* **In-app chat**: Available on Pro, Max, and Team plans. Click the blue chat bubble in the lower-right corner to get started.
* **Support Portal**: Visit our [**Support & Contact** ](/community/support-and-contact)page for details.

***


# Data & Privacy

<details>

<summary>What types of data do we collect?</summary>

Maker only collects the minimum data necessary to operate and improve our service:

* **Account data**: your name, email, and billing details.
* **Project metadata**: project names, creation/update timestamps, and anonymized usage logs.

> 🔔 We do not collect any personal data from your end users.

</details>

<details>

<summary>How is my data stored and protected?</summary>

* **Encryption**
  * In transit: TLS 1.2+
  * At rest: AES-256
* **Access Controls**
  * Role-based permissions (least-privilege)

</details>

<details>

<summary>Who has access to my data?</summary>

Only authorized Maker personnel with a legitimate support or maintenance need can view customer data. All internal access is strictly audited.

</details>

<details>

<summary>Do you share personal data with third parties?</summary>

No personal data is shared without your explicit consent, except:

1. When required by law or a valid subpoena.
2. For opt-in integrations (e.g., analytics providers).

</details>

<details>

<summary>Compliance &#x26; Regulations</summary>

Maker adheres to:

* **GDPR** (EU)
* **CCPA** (California)

You have full control: request data exports or deletions at any time.

</details>

<details>

<summary>Data Retention Policy</summary>

* **Usage & audit logs**: retained for **90 days**.
* **Account & project data**: retained until you delete your account.
* **Backups**: incremental nightly snapshots, retained per our disaster-recovery policy.

</details>

<details>

<summary>Can I access or delete my data?</summary>

Yes. Email <support@maker.co> with your request. After verifying your identity, we’ll promptly provide exports or execute deletions as required.

</details>

<details>

<summary>What if there’s a data breach?</summary>

In the unlikely event of a breach, we will:

1. Contain and remediate immediately.
2. Notify affected customers within **72 hours** with full details.
3. Perform a post-incident review and update our response processes.

</details>

<details>

<summary>Who do I contact with data-privacy concerns?</summary>

For any questions or concerns about data privacy, please reach out through the in-app chat, available to users on our Pro and Team plans.

</details>

***


# Style Guide

Get all the questions related to setting up your style guide in Maker answered here

### Privacy & Access

<details>

<summary>Where is the imported data stored, and who on my team can see it??</summary>

Anyone who is a member of the organization can see all fonts used across the style guides.

</details>

<details>

<summary>How are licensed fonts and brand files handled so they aren’t shared outside our team??</summary>

Font URLs must be publicly accessible in order to load on a website. But they are not shared outside of an organization unless DevTools is used to inspect the AI-generated page to extract those URLs.&#x20;

</details>

### Saving & Updates

<details>

<summary>If I already have a style guide, does this update it or create a new one? Can I choose?</summary>

You can choose. While working on a project, Maker will also prompt you to save recent design changes to a style guide if it detects you asked it to make changes to a design element. When you ask Maker to “save to style guide,” it knows if the project is already linked to a style guide and only updates the linked style guide, and will not create a new style guide unless asked explicitly.

</details>

<details>

<summary>If names or settings clash with my current guide, how do I pick which one to keep?</summary>

Maker will decide which one to keep and which one to omit.

</details>

### Speed, Limits & Reliability

<details>

<summary>How long does a typical import take? Is there a progress bar?</summary>

The amount of time it takes depends on the size of the context given to Maker. Large files and too many screenshots can slow it down. It can take several minutes. There is no progress bar at the moment.

</details>

<details>

<summary>Are there limits on the number of pages or asset sizes Maker's Style Guide can handle?</summary>

The real limit is the context window, which is 200,000 tokens. We have no limit on asset size.

</details>

### General Questions

<details>

<summary>If I update my style guide/theme, will existing projects update automatically?</summary>

No. Existing AI-generated projects never auto-update, and republishing won’t apply new styles. To use the latest theme, **Remix** the project with the current style guide—this creates a new copy so the original stays intact **while you test and fix any compatibility issues** from the updated theme.

</details>

<details>

<summary>If a font is a Google Font, will it be available automatically, or do I still need to upload files?</summary>

No need to upload Google Fonts; you can ask Maker to use the Google Font of your choice in the style guide instruction doc or the context field. For example, add “Use Playfair for the headings and Inter for the body text,” and Maker will know how to do that.

</details>

<details>

<summary>If I import into a project and then “save as style,” does that update the current style or create a new style?</summary>

It depends on how the project was created. Projects started with a style guide can modify the style guide they’re linked to. Projects created without a style guide will be saved to a new style guide.

</details>

<details>

<summary>If a new style is created, is there a way to merge it into the existing guide?</summary>

Currently, there is no option to merge two style guides.

</details>

<details>

<summary>Are there versions or changelogs for style guides so one can roll back after an import?</summary>

There is no versioning at the moment for style guides.&#x20;

</details>

<details>

<summary>If some font uploads fail, can I still proceed with the project and fix items later?</summary>

Yes, you can fix those later by uploading font files and regenerating the style guide.

<br>

</details>

<details>

<summary>When a font is missing, what is the fallback?</summary>

Fallback fonts are defined by Maker automatically and we will try to use system fonts as a fallback.

<br>

</details>

<details>

<summary>What happens when a font is missing—do I get a prompt to add it?</summary>

&#x20;Yes, you’ll see a button “Missing fonts” in the project preview.

</details>

<details>

<summary>Are there any limits on the number/size of font files and assets per style guide?</summary>

There’s no limit to the number of fonts or assets you can add, but each uploaded file is limited to 5 MB.

</details>

<details>

<summary>Where are uploaded fonts stored? Is it per style guide or account?</summary>

Fonts are stored in an S3 bucket at `/fonts/{orgId}/theme/{themeId}`. They’re shared within a style guide, keeping them organized by the style guide.

</details>

<details>

<summary>Can I continue adding assets (screenshots, palettes, logos) to the same style guide to incrementally upload additional fonts and brand details, or do I need to create a new guide each time?</summary>

Yes, you can continue adding assets and regenerate existing style guides at any time.

***NOTE:*****&#x20;Regenerating or editing a style guide doesn’t automatically update projects created from an older version. To apply changes, remix the project with the theme; fix any incompatibilities in the new remix while the original remains intac**t.

</details>

<details>

<summary>For custom fonts, which file formats are supported?</summary>

Supported font formats: TTF, WOFF, WOFF2, and OTF.&#x20;

</details>

<details>

<summary>How are weights/styles mapped from Figma text styles to the Style Guide?</summary>

We import the **style names** (family + weight/italic) as text tokens, but Figma doesn’t provide the actual font files—so they come in as **Missing**. Upload the correct fonts to your Style Guide, then use **Missing Fonts** in the project to map each style to the matching family/weight. Once mapped, all tokens resolve; if an exact weight isn’t available, we fall back to the closest weight.

</details>

<details>

<summary>If an imported Figma design conflicts with my Style Guide, which wins?</summary>

Imported layouts remain intact; Style Guides govern AI-generated and edited outputs. To enforce a new style across an imported project, Remix it and reapply the Style Guide.

</details>

<details>

<summary>Can I make a Style Guide the default for all new projects?</summary>

Yes. Set it as the default in Settings → Style Guide; new projects will start with it.

</details>

<details>

<summary>How can I make a new project match the design style and fonts of a project I already built?</summary>

There are two good options, depending on what you are trying to do:

**Option 1: Duplicate Project 1 (fastest way to match design exactly)**\
If you want Project 2 to inherit the exact same look and feel, duplicate Project 1 and use it as your starting point. Then replace the content and adjust sections as needed.\
You can duplicate from the **top-left dropdown menu** on the Project.

**Option 2: Save Project 1 as a Style, then apply it to Project 2 (best when Project 2 already exists)**\
If Project 2 is already built but you want it to adopt the same style as Project 1, save Project 1 as a Style and then apply it to Project 2 using **Remix**.

**How to apply a saved style to an existing project (while keeping structure and content):**

1. Open **Project 2**.
2. Click the **top-left dropdown menu**.
3. Select **Remix**.
4. Choose the **saved style** from Project 1.
5. Run Remix to update the project's styling (fonts, visual language, design system) while keeping the existing content and structure.

**Tip:** If your goal is a perfect visual match and you have not built Project 2 yet, duplicating Project 1 is usually the simplest. If Project 2 is already created, Remix is the best way to switch it to the saved style.

</details>

***


# Plans & Billing

Maker offers flexible plans for individuals and teams. Every plan starts with a 14-day free trial — you won't be charged until the trial ends.

### Choose the right plan for you:

<table data-card-size="large" data-view="cards" data-full-width="false"><thead><tr><th></th><th>Key Features</th><th data-hidden data-card-cover data-type="image">Cover image</th></tr></thead><tbody><tr><td><strong>Start with a 14-day free trial</strong><br> <br>3,000 total credits</td><td><p></p><ul><li>Public projects only<br><br>Perfect for trying things out. Includes 3,000 total for 14 days. All created projects are public and have "Made with Maker" badge in the bottom right corner.</li></ul></td><td><a href="/files/SFAFoIaGT4Z1mHogsOGM">/files/SFAFoIaGT4Z1mHogsOGM</a></td></tr><tr><td><strong>Pro -</strong> Starting at $30/month<br><br>10,000 credits/month<sup>*</sup></td><td><p></p><ul><li>Unlimited private projects</li><li>Remove "Made with maker" badge</li><li>Custom domains</li><li>Style Guide</li><li>Components</li><li>Single seat</li><li>100k/month Page views<br><br>Great for creators who want more flexibility. Starting with, 10,000 credits/month. Includes private projects, Figma import, Page makeover, custom domains, themes, components, and no "Made with Maker" badge. Single-seat access.</li></ul></td><td><a href="/files/JNnh2YP7wTbAgWO4Qo4h">/files/JNnh2YP7wTbAgWO4Qo4h</a></td></tr><tr><td><strong>Teams -</strong> Starting at $40/month<br><br>10,000 credits/month<sup>*</sup></td><td><ul><li>Everything in Pro, plus:</li><li>Access management</li><li>Up to 20 seats</li><li>100k/month Page views<br><br>Built for collaboration. Includes all Pro features, plus access management and up to 20 seats for team members.</li></ul></td><td><a href="/files/loxonnzwJ5XrSU3HIrYh">/files/loxonnzwJ5XrSU3HIrYh</a></td></tr><tr><td><strong>Max plan</strong>- Starting at $200/month<br><br>50,000 credits/month<sup>*</sup></td><td><p></p><ul><li>Everything in Teams, plus:</li><li>Variants</li><li>A/B testing</li><li>Insights and analytics</li><li><p>Use Maker from your AI Assistant</p><p><br>Built for teams that want to optimize and experiment. Max is available in three tiers: Max 50,000, Max 75,000, and Max 100,000 (credits/month). Max plans require an organization — personal accounts will be prompted to create one during upgrade.</p></li></ul></td><td><a href="/files/YsVm59lT9PC02jq33NzI">/files/YsVm59lT9PC02jq33NzI</a></td></tr><tr><td><strong>Enterprise -</strong> Custom pricing<br></td><td><ul><li>Tailored solutions for large teams</li><li>For custom needs and large-scale deployments, contact the Maker team for an enterprise solution. <a href="https://www.maker.co/request-demo">https://www.maker.co/request-demo</a> or email support@maker.co </li></ul></td><td><a href="/files/rPTul8hUh76wprjpwRs6">/files/rPTul8hUh76wprjpwRs6</a></td></tr></tbody></table>

<sup>***\****</sup>Credit amount may vary by plan tier.

***

### Billing

#### FAQ

<details>

<summary><strong>How do I update my billing information (e.g., credit card details)?</strong></summary>

You can update your payment method from the Settings page. Navigate to **Settings** → **Billing** → **Manage Billing**. You’ll be redirected to our customer portal on Stripe, where you can manage your billing information.

</details>

<details>

<summary><strong>Where can I find my billing history and invoices?</strong></summary>

All past invoices and billing history are accessible in our custom portal when you navigate to **Settings** → **Billing** → **Manage Billing**. You can view, download, or print invoices for your records.

</details>

<details>

<summary><strong>How am I charged if I upgrade my subscription mid-cycle?</strong></summary>

Maker refunds your unused current-plan credits at the rate you paid for them, then charges the full new-plan price minus that refund. After payment, your billing cycle restarts and you receive the new plan's full credit allowance. If payment is still due, the new credit allowance remains unavailable.

Go to **Settings → Billing** to change plans.

</details>

<details>

<summary><strong>What happens if I downgrade my subscription?</strong></summary>

If your current invoice is paid, your downgrade is scheduled for your next billing date. Your current plan, features, and credits remain unchanged until then, and there is no mid-cycle refund.

If you have an unpaid invoice, an eligible switch to a cheaper plan may replace it with a new invoice for the cheaper plan. Credits remain unavailable until the replacement invoice is paid. Upgrades are blocked while an invoice is unpaid.

Go to **Settings → Billing** to choose a different plan.

</details>

<details>

<summary><strong>What happens if my payment fails?</strong></summary>

If your card is declined or a payment doesn't go through, Maker will retry automatically. If the payment still doesn't resolve, here's what happens:

* Your credits drop to 0 immediately
* You have a 7-day grace period to update your payment method. Your published sites stay live during this window
* If payment isn't resolved within 7 days, your published projects are taken offline (suspended, not deleted)
* You can resubscribe at any time to restore them

Go to **Settings → Billing → Manage billing** to update your payment method.

</details>

<details>

<summary><strong>Is there an annual billing option?</strong></summary>

Currently, we only offer monthly credit plans.

</details>

<details>

<summary><strong>Do you offer refunds or a money-back guarantee?</strong></summary>

Outside the automatic unused-credit refund included in a mid-cycle upgrade, our standard policy is not to offer refunds for partial months or unused features. If you experience technical issues or other special circumstances, please contact our [support team](/community/support-and-contact) through the built-in chat.

</details>

<details>

<summary><strong>How do I cancel my subscription?</strong></summary>

You can cancel at any time. Go to **Settings → Billing → Manage billing**.

When you cancel:

1. Your plan and all features continue working until the end of your current billing cycle.
2. After your billing cycle ends, you enter a 7-day grace period. Your published sites stay live, but you'll have 0 credits and can only browse your projects.
3. After the grace period, any published projects will be taken unpublished (suspended, not deleted).

You can resubscribe at any time to restore your projects and access.

</details>

<details>

<summary><strong>Who do I contact if I have questions about my bill or need further assistance?</strong></summary>

You can reach out to our support team via the built-in chat option. Our billing specialists will try to answer any questions and help resolve issues quickly.

</details>

<details>

<summary><strong>Are there any additional fees besides the credit cost?</strong></summary>

There are no hidden fees.

</details>

<details>

<summary><strong>Will my projects be deleted if I cancel or my payment fails?</strong></summary>

No. Your projects are suspended, not deleted. After the 7-day grace period ends, your published project URLs will go offline, but your files are preserved. Resubscribe at any time from **Settings → Billing** and everything is restored automatically.

</details>

<details>

<summary><strong>How do I get a copy of my receipt or invoice for accounting purposes?</strong></summary>

You can download PDF copies of your receipts/invoices in the **Settings** → **Billing** → **Manage Billing**. Each invoice includes details of the charges, date of payment, and payment method used.

</details>

***


# Credits

Credits are how Maker tracks usage. Each AI response is charged based on its actual token cost. The formula uses your plan's credit rate to convert real AI costs into credits.

## Trial credits

During your 14-day free trial, you get **3,000 credits** for the entire trial period.

* Use them at your own pace — no daily limit
* Unused credits do not carry over to your paid plan
* Trial credits are separate from your plan's monthly credits — your full monthly allocation unlocks after the trial ends

***

### Plan credits

Once your trial ends and your paid plan begins, your credits work on a monthly cycle:

* Your plan includes a set number of credits per month (for example, 10,000 credits/month on the base Pro or Teams plan)
* Credits reset on your billing date each month
* Credit amounts may vary depending on your plan tier

***

### Tracking your credits

You can check your current credit balance anytime in your account dashboard.

* **During your trial:** The dashboard shows how many of your 3,000 trial credits you've used, plus how many trial days remain.
* **On a paid plan:** The dashboard shows your monthly usage and when your credits reset.

***

### What happens when you run out of credits

If you've used all your available credits, you'll see a message when you try to send a prompt. The message depends on your situation:

* **During your trial:** "You've used all 3,000 trial credits." Start your paid plan early to unlock your full monthly credits.
* **On a paid plan:** "You have reached your credit limit for this month." You can upgrade to a higher plan for more credits, or wait for your credits to reset on your next billing date.
* **Payment issue:** "Your latest payment didn't go through." Update your payment method in **Settings → Billing** to continue using Maker.
* **No active subscription:** "Your trial has ended. Subscribe to a plan to continue using Maker."

**If you run out mid-conversation**

If your credits run out while the AI is actively working on a response, the current run will be stopped gracefully. You'll see a message that the run was cut short due to credits. Any work completed before the cutoff is preserved — nothing is lost. The last response that triggered the cutoff is still delivered.

***

### Getting more credits

If you regularly run out of credits before the end of your billing cycle, consider upgrading to a higher-tier plan. Go to **Settings → Billing** to see available options.

When a paid upgrade succeeds, Maker refunds your unused current-plan credits at the rate you paid for them. You pay the full new-plan price minus that refund, your billing cycle restarts, and you receive the new plan's full credit allowance. If the upgrade invoice is not paid, the new allowance does not start.

A paid downgrade does not add or remove credits immediately. Your current allowance remains available until your next billing date, when the lower plan begins. If Maker replaces an unpaid invoice with an eligible cheaper-plan invoice, credits remain unavailable until the replacement invoice is paid.

***

### How credits are charged

Credits are charged based on the actual AI cost of each assistant response, not a flat per-message rate. Lighter prompts cost fewer credits, and heavier prompts cost more. Different AI models have different token rates, so the credit cost per response also varies based on the model used. You can see the credit cost of each response in the message badge.

Image and video generation also consumes credits. When the AI requests to generate an image or video, you'll see the estimated credit cost in the approval dialog before you confirm — so you always know the cost upfront.

***

### AI models and credit usage

Maker offers four AI model tiers. You can switch between them anytime using the model selector at the bottom of the chat.

* **Fast** (4× cheaper): Quick and cheap. Good for simple edits like text changes and small visual tweaks. It can handle more complex things too, but it might make more mistakes.
* **Balanced** (default): The default model. Great for most work.
* **Deep** (1.5× pricier): Harder thinking for complex tasks.&#x20;
* **Ultra** (2.5× pricier): The most capable model for the hardest problems. Ultra uses significantly more credits per response. Only use it if you've tried other models and they can't resolve your issue.

### FAQ

**Plans and Pricing**

<details>

<summary>Is there a free plan?</summary>

No. Maker offers a 14-day free trial with 3,000 credits instead of a permanent free plan. After the trial, you need a paid plan to continue using Maker.

</details>

<details>

<summary>How does the free trial work?</summary>

When you sign up, you get a 14-day free trial to explore Maker:

* 3,000 credits for the entire trial period — use them at your own pace
* A payment method is required to start the trial, but you won't be charged until the trial ends
* You can cancel anytime during the trial at no cost
* After the trial, your card is charged automatically and your full plan credits unlock

</details>

<details>

<summary>Can I get more than one trial?</summary>

No. Each user gets one 14-day trial, even if you create multiple organizations or workspaces.

</details>

<details>

<summary>What happens if I run out of credits in the middle of a conversation?</summary>

AI will finish its current response and then stop. You'll see a message that the run was cut short due to credits. Any work completed before the cutoff is preserved — nothing is lost.

</details>

**Credits**

<details>

<summary>How do credits work?</summary>

Credits are charged based on the actual AI cost of each response.

* **During your trial:** 3,000 credits for the entire 14-day trial
* **On a paid plan:** Monthly credit allocation based on your plan (for example, 10,000/month on Pro)

</details>

<details>

<summary>What happens when I run out of credits?</summary>

* **During your trial:** Start your paid plan early to unlock full monthly credits.
* **On a paid plan:** Upgrade to a higher plan for more credits, or wait for your credits to reset on your next billing date.

</details>

<details>

<summary>Which model should I use?</summary>

Start with **Balanced** for most work. Use **Fast** for simple tasks like editing text or small visual changes. Switch to **Deep** when you need stronger reasoning for complex tasks. Save **Ultra** for situations where other models can't resolve your issue.

</details>

<details>

<summary>How does model selection affect my credits?</summary>

Each model tier has a different cost per response. **Fast** is 4× cheaper than Balanced, **Deep** is 1.5× pricier, and **Ultra** is 2.5× pricier. Choosing the right model for the task helps you get the most out of your monthly credits.

</details>

<details>

<summary>What is Plan mode?</summary>

Plan mode lets the AI think through an approach before implementing it. Pairing Plan mode with a stronger model (like Deep or Ultra) for the planning step, then switching to a cheaper model for implementation, is a great way to get quality results without using excess credits.

</details>

<details>

<summary>What is Plan mode?</summary>

Plan mode lets the AI think through an approach before implementing it. Pairing Plan mode with a stronger model (like Deep or Ultra) for the planning step, then switching to a cheaper model for implementation, is a great way to get quality results without using excess credits.

</details>

<details>

<summary>When should you use the Ultra mode</summary>

Ultra is the more expensive than the other models. It's available if you are willing to pay a premium for the best model. Use it when it is absolutely necessary and for more complex tasks.&#x20;

If you're stuck and other models can't resolve your issue, try this: turn on **Plan** mode and use **Ultra** only for that plan. Once it makes a good plan, switch to a cheaper model to implement it.

</details>


# Quickstart

Get up and running with Maker in under 5 minutes. This guide walks you through creating, previewing, publishing, and editing your first Maker content.

***

{% embed url="<https://vimeo.com/1097293538?share=copy#t=0>" %}

### Starting your project

<details>

<summary>Create a New Project manually as outlined below or use <a href="/pages/wW5xvWDZbGAY24SKGNQu">Maker Agent</a></summary>

* Click **New Project** in the sidebar or type a prompt.
* (Optional) Select a **Brand Style** from the dropdown.
* Click on the arrow to proceed.

</details>

<details>

<summary>View the Live Preview</summary>

After a few seconds, your project will appear in the preview pane.

* Toggle between mobile/desktop viewports.
* Click on the “open in new tab” to **preview the project** in full screen.

</details>

<details>

<summary>Creating a Project without Brand Guidelines</summary>

* Click **+ New Project**.
* Choose **No Style Guide** from the dropdown.
* Name and **Create**.
* Maker AI will apply a clean, unbranded palette and font set.

</details>

<details>

<summary>Creating a Project that Follows Your Brand Guidelines</summary>

* Click **+ New Project**.
* Select your **Style Guide** from the dropdown.
* Name your project and **Create**.
* All generated code and components will automatically adhere to your saved styles.

</details>

***

### Edit your project

<details>

<summary>Write Your First Prompt</summary>

Type your desired project description into the prompt box. For example:

“Create a hero banner for my homepage with parallax animation. “

Press **Enter** or click the **→** button.

</details>

<details>

<summary>Prompting &#x26; AI Behavior</summary>

* **Can I control the tone or layout Maker uses?**

  Yes—be explicit in your prompt. Example:

  “Create a minimal product page with large headlines, small body copy, and a calm, editorial tone.”
* **Can Maker adhere to my brand's voice and tone?**

  Yes, as long as the[ style guide](/features/style-guide) is set up and you have references shared when creating the style guide, along with clear instructions, Maker will adhere to the brand's voice and tone.
* **Can I prompt in other languages?**

  Currently, we support only prompts in English and will be adding other language support.

</details>

<details>

<summary>Iterate &#x26; Customize</summary>

* Edit the project directly in the editor.
* Ask Maker follow-up prompts, e.g.:
  * “Add a blue background to the header.”
  * “Include a footer with © 2025 My Company.”
* Each change updates the live preview in real time

</details>

<details>

<summary>What Is Remix?</summary>

Remix is Maker’s “fork” feature:

1. Open any project.
2. Click **Remix** in the top toolbar.
3. A copy appears in your **Projects** list.
4. Changes to the remix don’t affect the original—ideal for experimentation or sharing a template.

</details>

<details>

<summary>How can I delete or rename a project</summary>

To **delete** a project, click the **delete icon** on the project thumbnail.

To **rename** a project, open the **dropdown menu** in the top-left corner of the project and select the rename option.

</details>

<details>

<summary>How Style Guides work in Maker</summary>

* This feature is available only on premium plans, such as Pro and Team.&#x20;
* Uses a **Style Guide** to define colors, fonts, and imagery.
* Every component and template reads from the active style.
* **Style Guides** live in **Settings** → **Style Guide**.
* You can **edit**, **duplicate**, or **delete** a style guide at any time—changes cascade through existing projects.
* Prompt inline overrides (e.g., “Use a red button instead of primary”) temporarily supersede the style guide.

</details>

<details>

<summary>How Do I Duplicate a Maker Project?</summary>

* From **Projects**, hover over the project card.
* Click the **••** menu → **Duplicate Project**.
* A copy will appear immediately for you to modify.

</details>

<details>

<summary><strong>Can I create content in dark mode?</strong></summary>

Yes! You can prompt Maker to design your component or page in dark mode.

Example:

> “Create a dark-mode pricing page with white text on a black background and clear CTAs.”

You can even ask Maker to include a **light/dark mode toggle** in the design.

</details>

***

### Publish and go live

<details>

<summary>Publish Your Project</summary>

* Click **Publish** in the top-right corner.
* Choose **Publish Now** to make your project public, or **Make Private** to restrict access.
* (Optional) Under **Publish**, connect a custom domain.
* Use the “Live” link to share the project with teammates and stakeholders

</details>

<details>

<summary>Updating Maker Content</summary>

* Open the project you want to update.
* Choose either the ["Select to edit"](/features/select-to-edit) option or add a prompt with the updates you’d like to make.
* Press **Enter**
* Review the updated preview in the editor. It’s always advisable to preview the full-screen preview by clicking on “open in new tab,”
* Click **Publish** again to push your updates to the public (or private) URL.

</details>

<details>

<summary>Connecting a Custom Domain</summary>

* Inside your project, click **Publish**
* Click on **+ Connect Custom Domain**.
* This will redirect you to the domain settings page.
* [Follow the instructions to connect.](https://www.notion.so/Hosting-Updates-done-214866387a5380878f82cfb7f28dd079?pvs=21)
* Wait up to 24 hours for DNS propagation.
* Once verified, your Maker project will be accessible at your custom URL.

</details>

<details>

<summary>Embedding Maker Content on Your Site</summary>

* In your Maker project, click **Publish.**
* Copy the provided **embed** code—choose between a Simple Embed or an Iframe Embed.
* Paste it into your site’s HTML where you want the Maker project to appear.
* Save and deploy your site. Your live Maker project will load in place of the embed.

</details>

<details>

<summary>Embeds, CMS &#x26; Integration</summary>

* **Can I export HTML or code?**

  Yes — you can download your project by clicking the **Download project as ZIP** icon located next to the **Publish** button.

<figure><img src="/files/u6hvP8istRF5r3Flcmfb" alt=""><figcaption></figcaption></figure>

* **Can I connect APIs or a CMS?**

  We don’t have built-in support for any specific CMS or API. But you can always try to ask Maker and provide it with an API endpoint or an RSS feed, and in many cases, the Maker will be able to use it. That especially applies to well-known, popular, and documented CMS or API platforms.
* **Can I embed Maker content in another platform (Webflow, Shopify, etc.)?**

  Yes. Use the **Publish > Embed** option to generate a simple embed or iframe embed you can drop into most platforms.

</details>

***


# Maker Agent

Maker Agent is a new AI assistant built into your workspace home screen. It's designed to help you get started faster, pick up where you left off, and handle the tasks you're already doing in Maker.

***

### Benefits

Built into your Maker home screen, Maker Agent knows everything about your projects, their state, where you left and also knows everything about Maker and what it can do.

* It starts the conversation by welcoming you and guiding you through first steps
* It follows up when you come back based on your previous actions
* It can help explain how Maker features work
* It can create projects for you, it can check on their status, it can do audits and everything you are already used to doing in a project editor

***

### What Maker Agent Can Do

Maker Agent handles tasks across multiple areas:

**Get to know your workspace**

* Check on individual projects and see how they're performing
* Review all open feedback and comments across your projects
* Search through chat history and project files
* Get recommendations on what to work on first

**Make it do work**

* Run audits (SEO, performance, security, conversion)
* Build style guides from your live site
* Design new pages or redesign existing ones
* Add sections to published projects without opening them
* Clone pages or turn Figma files into live pages

**Ask it about Maker**

* Get answers about Maker features from the support docs
* Check your current credit balance and renewal dates
* Learn about your plan features

**Quick start a project**

* Just tell the Agent what you want to build
* Or skip the Agent entirely by toggling the purple button to go back to the classic home screen

***

### Try It Out

Here are some actual prompts you can use to get started:

#### Get to know your workspace

* "What should I work on first?" - The Agent reads every project's real state and suggests where to focus based on page views, drafts, A/B tests, and open comments.
* "How is \[project name] doing?" - Get a snapshot of one project with the live URL and how long it's been published.
* "What feedback is still open across my projects?" - See all comments across your workspace without opening individual projects.
* "What did I ask for in \[project] last week?" - Search your chat history and file notes from any project.

#### Make it do work

* "Audit <https://yoursite.com/pricing> for SEO and performance" - The Agent runs a real Lighthouse audit and checks conversion factors. You can also ask for security audits or general page reviews.
* "Make a style guide from \[your company site]" - Pulls your brand directly from your live site into a reusable style guide.
* "Redesign https\://\[page] for conversion" - The Agent picks the best build mode (makeover, clone, AI+, design mocks, etc.) and starts a project for you.
* "Add a testimonials section to \[existing project]" - Make updates to published projects without opening them in the editor.
* "Clone this page" - Attach a screenshot and say "build this" - the Agent carries your uploads over into a new project.

#### Ask it about Maker

* "How do I connect a custom domain?" - Get answers straight from our docs with links. No guessing.
* "What's in the Business plan?" - Learn about plan features with up-to-date information.
* "How many credits do I have left and when do they renew?" - Check your actual billing state.

### Behind the Scenes

Every home chat message you start (not the Agent's greeting or follow-ups) uses credits at our fast model rate. The welcome message and follow-up prompts are free, since you didn't trigger them. Since Maker Agent doesn’t do any coding, most tasks take 2-20 credits at most.

Think of it as a concierge - one agent you talk to when you want to do anything with Maker. It gets smarter the more you use it.

### Turn off Agent mode

Prefer the classic home screen? Toggle the purple button to switch back to the standard experience. You can always return to the Agent whenever you'd like.

#### FAQ

<details>

<summary>Do I have to use Maker Agent?</summary>

No. When you log in, you'll see the Agent home screen by default. If you prefer the classic home screen, toggle the purple button that says "Agent" and you'll switch back to the standard experience. You can go back and forth whenever you want.

</details>

<details>

<summary>How does Maker Agent know about my workspace?</summary>

The Agent reads your actual project data from Maker: published status, page views, A/B tests, open comments, chat history, and your file contents. It's not making guesses. It's looking at what's really happening in your workspace.

</details>

<details>

<summary>Is my data private?</summary>

Yes. The Agent only accesses information from your own workspace. It doesn't share your data with other users or use it to train models.

</details>

<details>

<summary>Can the Agent access all my projects?</summary>

Yes. The Agent can see all projects in your workspace, including draft and published projects. It can read comments, chat history, and files across all of them.

</details>

<details>

<summary>How much does Maker Agent cost?</summary>

Every message you send to the Agent (not the greeting or follow-ups) uses credits at our fast model rate, the same as other AI runs in Maker. The Agent's welcome message and follow-up prompts are free, since you didn't trigger them.

</details>

<details>

<summary>Do I get charged if the Agent sends me a follow-up?</summary>

No. The initial greeting and follow-up messages from the Agent are free. You only use credits when you send a message to start a conversation.

</details>

<details>

<summary>Can I turn off the Agent to avoid credit usage?</summary>

Yes. Toggle the purple button to switch back to the classic home screen. You won't use any credits just by not interacting with the Agent.

</details>

<details>

<summary>What if I ask the Agent something it doesn't know?</summary>

The Agent draws answers from real Maker documentation and your actual workspace data. If you ask about a feature or plan detail, it will pull from our docs with a link. If it can't find an answer, it will let you know and point you to where you can get help.

</details>

<details>

<summary>Can the Agent create projects for me?</summary>

Yes. You can tell the Agent what you want to build (like "create a landing page for a SaaS product" or "redesign my pricing page"), and it will start the right kind of project for you. You can then open it in the editor to keep working.

</details>

<details>

<summary>Can the Agent edit my existing projects?</summary>

Not directly in the editor, but it can handle certain tasks without you opening a project. For example, you can ask it to "add a testimonials section to my homepage" and the Agent will relay that request into the project and start the work.

</details>

<details>

<summary>What if I don't know what to ask?</summary>

That's exactly why the Agent exists. Just ask open-ended questions like "What should I work on first?" or "How is my homepage doing?" The Agent will scan your workspace and give you a real answer based on what it sees.

</details>

<details>

<summary>Can the Agent run audits?</summary>

Yes. You can ask it to audit any page for SEO, performance, security, or conversion factors. The Agent runs real Lighthouse audits and checks against Maker's audit skills, then reports back with findings and recommendations.

</details>

<details>

<summary>The Agent gave me an answer that seems wrong. What do I do?</summary>

The Agent pulls information from your real workspace data and our docs. If something seems off, try rephrasing your question or asking for more detail. If you think there's a bug, let us know.

</details>

<details>

<summary>Can I see what the Agent did in my workspace?</summary>

If the Agent creates a project or makes changes, you'll see them in your Projects list, just like anything else you create in Maker. Chat history stays in the Agent conversation.

</details>

<details>

<summary>What if the Agent doesn't understand my request</summary>

The Agent is getting smarter over time, but it's still learning. If something doesn't work, try being more specific. For example, instead of "make my site better," try "audit my pricing page for conversion." The more details you give, the better it works.

</details>

<details>

<summary>Can I give the Agent feedback?</summary>

Yes. If something isn't working well or you have an idea for how to improve it, let us know. We're actively developing the Agent and your feedback helps shape what it can do.

</details>


# Figma

Import artboards from Figma right in the chat—no separate UI needed.

***

{% embed url="<https://vimeo.com/1101616518>" %}

#### Paste Your Frame Link in Chat

1. In Figma, right-click on any Section, Frame, or Page. Select “Copy/Paste as > Copy link to selection” from the drop-down menu.
2. In the prompt box, click **+** → **Import from Figma**.
3. Paste your **Figma URL**
4. Click **↵ Go**.

***

#### Authorize Figma (First Time Only)

* A modal will prompt you to connect Maker to your Figma account.
* Once authorized, Maker remembers your credentials for future imports.

***

#### Use Multiple Breakpoints

* In Figma, create a frame for each breakpoint you want (for example Desktop, Tablet, and Mobile) within one section.
* Maker detects breakpoints two ways: by frame name (containing "desktop," "tablet," or "mobile") or by frame width (for example 1440px, 768px, 375px). If your frames already follow a width convention, you don't need to rename anything.
* Share a **link to the section** as in Step 1, and Maker will import all breakpoints in one job.

**Only have a desktop design?** Maker will automatically generate mobile and tablet versions for you.&#x20;

***

#### Run the Import

* After you hit enter or click on the arrow to proceed, Maker will begin the design import.
* In a few seconds, your imported project will appear in the preview pane.

***

#### Tweak & Add Interactivity

* Use prompts to make edits or add interactivity.
* If the same section shows up across your Desktop, Tablet, and Mobile versions, editing the text once will usually update it everywhere, instead of needing to edit each breakpoint separately.

***

#### FAQ

<details>

<summary>Do I need to name my Figma frames "Desktop," "Tablet," and "Mobile"</summary>

No, Maker detects breakpoints by frame name or by frame width, so if your frames are already named by size (like home(1440), home(768), home(320)), they'll be picked up automatically.

</details>

<details>

<summary>What if I only have a desktop design in Figma?</summary>

Maker will automatically generate mobile and tablet versions for you based on the desktop layout.

</details>

<details>

<summary>Why do some sections look different after import than they do in Figma?</summary>

Complex sections occasionally get flattened into a single image instead of being imported as editable elements. If this happens, ask Maker to rebuild that section, and it will recreate it as editable content.

</details>

<details>

<summary>Why does the text look cut off or overflowing after import?</summary>

Auto-generated mobile and tablet breakpoints adjust column layout automatically, but if the font does not re-size, prompt Maker to adjust sizing where needed.

</details>

<details>

<summary>Are tablet layouts as reliable as mobile and desktop?</summary>

Tablet breakpoints are currently the least consistent of the three and may need a quick manual touch-up after import.

</details>

<details>

<summary>If I edit text in one imported section, will it update everywhere else it appears?</summary>

Usually yes. If a section shows up on more than one breakpoint (for example, the same header on your Desktop, Tablet, and Mobile designs), Maker now recognizes it as the same piece of content. So editing the text in one place typically updates it across all versions, instead of you having to make the same edit three separate times. Occasionally, if this does not happen, you will need to individually select those sections and elements and either prompt Maker or use the visual editor to make those edits.&#x20;

</details>

<details>

<summary>What's the difference between clicking "Import from Figma" and pasting a Figma link into a prompt?</summary>

Clicking Import from Figma always uses Maker's own built in importer. Pasting a Figma link directly into a prompt instead will use Figma's MCP connector, if you have it connected.

</details>

<details>

<summary>What's the recommended way to import from Figma for the most accurate results?</summary>

We recommend using the Import from Figma button (as described above) rather than pasting a Figma link directly into a prompt. It uses Maker's own built-in importer, which is tuned for accurate fonts and font weights, complete image assets, and clean layouts that stay true to your original design, even in more complex sections. Pasting a link directly into a prompt instead uses Figma's MCP connector, which can sometimes add elements that weren't in the original design or introduce other unintended changes.

</details>


# Select to edit

Quickly target any element in your live preview for focused edits—no manual selector hunting required.

***

{% embed url="<https://vimeo.com/1097293557?share=copy#t=0>" %}

### How It Works

{% stepper %}
{% step %}

#### **Activate Select to Edit**

Click the 🎯 “Select to Edit” icon in the prompt box toolbar.
{% endstep %}

{% step %}

#### **Pick an Element**

Click the element in the preview pane you want to modify. Maker highlights it and inserts a reference placeholder (e.g. `[selected element]`) into the prompt.
{% endstep %}

{% step %}

#### **Write Your Prompt**

Describe the change you’d like to make to that element. For example: Change the selected element’s background to a glassmorphism blur and set its border-radius to 12px.
{% endstep %}

{% step %}

#### **Run & Apply**

Press **Enter** (or click on the arrow). Maker updates only that element’s code, leaving the rest of your project untouched.
{% endstep %}
{% endstepper %}

***

### Examples

<table data-card-size="large" data-view="cards"><thead><tr><th>Change</th><th>Step 1</th><th>Step 2</th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Styling</strong></td><td>Select a button.</td><td>Prompt: “Make the selected element’s text uppercase”</td><td><a href="/files/XDDC2qzF0URfV9RVW1zN">/files/XDDC2qzF0URfV9RVW1zN</a></td></tr><tr><td><strong>Content</strong></td><td>Select a paragraph.</td><td>Prompt: “Update the selected text to ‘Welcome to Our Platform!’ and center-align it.”</td><td><a href="/files/ygWj7ul2yL4rCMoF9sHH">/files/ygWj7ul2yL4rCMoF9sHH</a></td></tr><tr><td><strong>Behavior</strong></td><td>Select a link.</td><td>Prompt: “Wrap the selected element in a tooltip that says ‘Click here to learn more.’”</td><td><a href="/files/t6BXjpUhnqEKn4PfgXlk">/files/t6BXjpUhnqEKn4PfgXlk</a></td></tr></tbody></table>

***

### Tips & Best Practices

* **One element at a time**: activate Select to Edit for each distinct change.
* **Chaining edits**: after one change, re-activate and select another element to continue refining.
* **Undo & History**: if you mis-select, cancel the prompt, or revert via the **Version** **History** panel found in the "Publish" drop-down.

***

Harness “Select to Edit” to make pixel-perfect tweaks in seconds—no CSS selectors required!

***


# Style Guide

Give Maker “style guide” to keep your colors, fonts and imagery on-brand—across every project.

***

### What are Style Guides?

A **Style Guide** is a reusable set of brand guidelines you build once (by uploading a logo, a palette screenshot, or simple text instructions) and then select in any new chat to have Maker:

* Auto-apply your brand’s color stops, gradients, and text styles
* Generate UI components that match your existing design system
* Keep layouts, spacing, and imagery consistent

> 🔔 Note: Uploaded screenshots or logos are used solely to extract colors, fonts, and layout cues. They are not included as assets in your generated projects.

***

{% embed url="<https://vimeo.com/1097293500?share=copy#t=0>" %}

### Style Guide options

From **Settings → Style guides**, click the **+ Create style guide** card. Maker gives you four ways to start:

1. **Enter your website URL** (Recommended)
2. **Import a DESIGN.md** — already have one? Upload the file or paste a hosted URL and Maker will build a style guide from it.
3. **Import from Figma**
4. **Upload your brand guidelines**

<figure><img src="/files/peDTBimwE9bKYsEhfzt8" alt=""><figcaption></figcaption></figure>

### Overview of steps for creating a new Style Guide

1. In the **left sidebar**, click **Settings**.
2. Click on the **"Style guides"** tab.
3. Click the **"+ Create style guide"** card to start a new one.
4. Choose how you'd like to create your style guide from the four options above.
5. **Name your style** (e.g. `Acme Corp`, `My Portfolio`).
6. Click **Generate**. Maker analyzes your inputs and builds a style guide with colors, fonts, spacing, corners, and sample components — this typically takes under a minute.
7. **Review & Save**: tweak any values in the editor — swap fonts, adjust a hue, rename a spacing step — then click **Save**.

> 🔑 Pro Tip: To have all new projects follow this style guide, set it as your default. It will be automatically selected when you start a new project.

**How it works:** **Assets → Style Guide → Projects.**

* **Assets** (docs, screenshots, fonts) are inputs the AI reads.
* The **Style Guide** is the structured output that the AI generates and what projects actually reference — under the hood, it's a `DESIGN.md` file.
* **Projects** created with a Style Guide use its tokens consistently.

***

### Create a Style Guide with the Enter your website URL

Enter your website. Maker will analyze your website’s design and create a style guide from it. Provide any additional context in the field provided.&#x20;

*Note: You will still need to upload the custom fonts in the assets tab once the style guide is created.* &#x20;

### Create a Style Guide by importing a DESIGN.md

Already have a `DESIGN.md` from another project, or one exported from Maker? Upload the file directly or paste a hosted URL, and Maker will generate a full style guide from it — colors, typography, spacing, corners, components, and guidelines all come in pre-populated. This is the fastest way to bring an existing design system into Maker or copy one guide's structure into a new one.

### Create a Style Guide with Import from Figma

Maker can import your Figma designs and automatically generate a style guide. You can provide either a single frame containing your design system elements or a full webpage design. Just paste the Figma link in the field provided and include any additional context if needed.

*Note: You will still need to upload the custom fonts in the assets tab once the style guide is created.* &#x20;

### Create a Style Guide with the Upload Option

Upload brand inputs and let AI draft the guide.

**Supported inputs**

* **Documents:** Markdown (.md) and PDF (≤ **5 MB** each)
* **Images:** PNG/JPG (e.g., screenshots of your current site)
* **Fonts:** We support these formats-**.ttf, .otf, .woff, .woff2**

**Best practice**\
Upload **all three** for the highest fidelity guide:

1. Your brand guidelines (PDF/Markdown)
2. **Screenshots** of your current website/marketing
3. **Font files** your brand uses

**Steps**

1. Go to **Site Settings → Style Guides → New Style Guide**.
2. Drag in your files (docs, screenshots, fonts) and click **Generate**.
3. Review the generated guide (colors, type, spacing, etc.).
4. Make tweaks in the Style Guide editor (see details in the "Understand the Style Guide Editor" section).
5. If you add more assets later, click **Regenerate** to incorporate them.

> **Note:** Regenerate uses a token credit.

### Create a Style Guide from an existing project

Any current project can be used to create a new style guide. This can be a project created using a Figma import or any other way you choose to create that project.&#x20;

**Steps:**

* In the project prompt, say **“Save this project as a Style Guide,” or in the dropdown seen on the top of the editor, select Save to Style Guide and save as a new style guide or update an existing style guide.**&#x20;
* Fonts from Figma may come in as generic/Google references. **Upload your actual font files** to the created Style Guide under assets, and then update the typography tab in the Style Guide. If needed, regenerate.

***

### Understand the Style Guide Editor

Opening a style guide drops you into an editor with a **left navigation panel**, a **center panel** for the settings you're editing, and a **live preview** on the right that updates as you type. At the top, a **Editor / Advanced** toggle lets you switch between the guided form view and the raw `DESIGN.md` source.

The left navigation is split into two groups, each item showing a live count of the tokens or sections it holds:

**Set up**

* **Brand basics** — the guide's name and one-line description.
* **Colors** — your named color tokens.
* **Text styles** — your named typography tokens.
* **Spacing** — your spacing scale.
* **Corners** — your corner-radius scale.
* **Components** — reusable UI component definitions styled by your tokens.

**Write**

* **Guidelines** — the prose sections that make up the written part of your `DESIGN.md`.

A status indicator at the bottom of the sidebar (e.g. "Guide looks healthy — every value is named and valid") flags missing names or invalid values as you edit, so you can catch problems before saving.

Use **Save** at any time to persist changes, and the **undo/redo** arrows next to it to step back and forth through your edits.

**Brand basics**

* **Name** — shows up in your list of style guides and in the card preview.
* **Description** — a one-line summary of the brand's look and feel. This appears on the style guide's card in the gallery and in the "Style Guide" preview card in the live preview panel.

**Colors**

* Your brand's core colors, each with a short **name** and a **value** — either a hex code or a `{ref}` pointing to another color (e.g. `on-secondary: {colors.primary}`), so aliases stay in sync automatically.
* Use **+ Add color** to add a new token, or the **×** next to a row to remove one — you're no longer limited to a fixed palette size.
* The live preview's **Palette** grid shows every swatch with its name and hex value.

**Text styles**

* Named typography tokens (e.g. `display-lg`, `display-md`, `body-lg`, `body-md`, `nav-link`, `badge`), each with **Font family**, **Size**, **Weight**, **Line height**, and **Letter spacing**.
* Click **+ Add property** on a style to add another attribute, or **+ Add style** to define a new named text style.
* The **"Ag"** button on each style previews it inline; **Remove** deletes the style.
* The live preview's **Type scale** section renders sample text ("The quick brown fox") for every style so you can see size and weight side by side.

**Spacing**

* A named scale for padding and margins (e.g. `xxs` 4px, `xs` 8px, `sm` 12px, `md` 16px, `base` 20px, `lg` 24px, `xl` 32px, `xxl` 48px, `section` 64px).
* Give each step a short name and a size; use **+ Add step** to extend the scale.
* The live preview's **Spacing scale** shows each step as a proportionally sized bar.

**Corners**

* A named scale for corner radii (e.g. `rounded.sm`, `rounded.full`), used the same way as Spacing — short name, a size or keyword, add/remove freely.
* Referenced from Guidelines to enforce rules like "don't apply radii larger than `4px` to primary buttons."

**Components**

* Reusable component definitions (buttons, announcement bars, cards, etc.) styled by your other tokens.
* Each component appears in the live preview so you can see it rendered with your current colors, type, spacing, and corners applied.

**Guidelines**

Written notes on how to use the brand — these become the prose sections of your `DESIGN.md`. Maker seeds a default set of sections and you can add your own:

* **Overview** — who the brand is, audience, tone.
* **Colors**, **Typography**, **Layout**, **Elevation & Depth**, **Shapes**, **Components** — how each design decision should be applied, often referencing tokens directly (e.g. `{colors.secondary}`).
* **Do's and Don'ts** — quick rules of thumb.
* **Custom sections** — click **+ Add section** to write your own (e.g. "Responsive Behavior," "Known Gaps") with a title and free-form text; use **Remove** to delete one.

**Advanced mode**

Switching to **Advanced** shows the guide's raw `DESIGN.md` as YAML — front matter (`version`, `name`, `description`), then `colors`, `typography`, and the rest of the tokens — for direct editing. A **Validate** button checks the YAML before you save, and the live preview stays in sync on the right. This is the fastest path if you're comfortable editing structured text directly or pasting in values from another system.

**Preview behavior**

* The preview updates reactively as you edit values in either Editor or Advanced mode.
* **Saving the Style Guide does not retro-apply to existing projects.** It's for validation and for **future** projects/remixes.

***

### Using a Style Guide in Projects

* From the **Home** screen, select a Style Guide in the dropdown, then **create a project**.  Maker will use its tokens.
* As you work, Maker can surface a **“Save to Style Guide”** suggestion (light‑bulb button). Click it to update the linked guide—or say in chat: **“Update the linked Style Guide with these changes.”**

> **Important:** Changing a Style Guide **does not** change projects you previosly published. To apply updates, **Remix** or create a new project with the guide.

🔑 Pro Tip: If you didn’t set a default Style Guide, Maker will apply a neutral one. You can switch to your preferred Style Guide at any time—even mid-project—with our [remix feature](/features/project-remix).

***

### Fonts

* Upload the actual **.ttf/.otf/.woff/.woff2** files in **Assets** even if they are mentioned in the PDF you uploaded in the assets.&#x20;
* After uploading fonts, either:
  * Select those families in **Typography**, or
  * Update the auto‑generated instruction file to reference the correct families and **Regenerate**.
* **Cross‑guide availability:** AI can use any custom font you’ve uploaded in **any** of your Style Guides—just ask it to use the font **by name** in a project.

***

### Logos

* Host your logo (PNG/SVG) publicly and paste its **URL** into **Brand Context** with a clear instruction, e.g., *“Use this logo in headers: https\://…/logo.svg; use the white variant on dark backgrounds.”*
* **Do not** rely on uploading a logo only as an Asset: project‑creation AI reads the **generated Style Guide**, not raw Asset files.
* PDFs can describe logo usage (safe‑area, on dark/light), but AI cannot extract the logo file from the PDF.

***

### Troubleshooting

**Fonts not showing / wrong family**

* Upload the actual font files → pick them in **Typography** → Regenerate if needed. Ensure names match the family you reference.

**Colors look “off”**

* Screenshots can be approximate. Upload a palette doc or list exact hex values. Edit values directly in Colors.

**My updates didn’t change existing pages**

* Style Guide edits don’t retro‑apply. **Remix** or create a new project using the updated guide.

**Logo doesn’t appear**

* Add a **public URL** and instruction in **Brand Context**. (Dedicated logo uploads are coming.)

**I need a color, spacing, or corner token that isn't there**

* Click **+ Add color** / **+ Add step** in the relevant tab to add it directly — no need to regenerate. Reserve **Regenerate** for when you've uploaded new source assets.

**My DESIGN.md won't save**

* Switch to **Advanced**, click **Validate** to surface the YAML error, fix it, and save again.

***

### Quick Prompt Recipes

* **Save from project:** *“Save this project as a Style Guide.”*
* **Update from project:** *“Update the linked Style Guide with the changes on this page.”*
* **Use Google font:** *“Use Inter from Google Fonts for Body text.”*
* **Use custom font:** *“Use ‘Acme Sans’ for H1/H2. It’s uploaded in my Style Guides.”*
* **Enforce a rule:** *“Add to Brand Checklist: Avoid oversized hero banners.*

***

### Managing Styles Guides

* **Edit**: click on the style guide and make the necessary edits
* **Delete**: to remove old or unused styles to keep your list tidy, hover over a style card and select the delete icon

***

### Best Practices

*

```
#### Best Practices
```

```
* **Share as much content and context as you can:** The richer your assets, the stronger the Style Guide. You can always add, refine, or remove assets and regenerate the Style Guide.
* **Keep it up-to-date:** regenerate after any brand palette or font change.
* **Don't over-write your Guidelines:** past a certain point, extra length doesn't improve output — the AI won't act on padding. Keep Guidelines focused on brand-level rules (colors, type, spacing, tone); save component-level precision for a Template.

> 🔑 Pro Tip: Style Guides and Templates serve different jobs — a Style Guide keeps a project on-brand (colors, type, spacing, tone), while a Template locks in precise component-level layout. Use both together for the tightest results, but don't try to make one do the other's job.
```

[Learn more about Custom Fonts here](/tips-and-tricks/custom-fonts)

[See Style Guide FAQs here ](/features/style-guide/style-guide-faqs)

***


# Style Guide FAQs

Get all the questions related to setting up your style guide in Maker answered here

### Privacy & Access

<details>

<summary>Where is the imported data stored, and who on my team can see it??</summary>

Anyone who is a member of the organization can see all fonts used across the style guides.

</details>

<details>

<summary>How are licensed fonts and brand files handled so they aren’t shared outside our team??</summary>

Font URLs must be publicly accessible in order to load on a website. But they are not shared outside of an organization unless DevTools is used to inspect the AI-generated page to extract those URLs.&#x20;

</details>

### Saving & Updates

<details>

<summary>If I already have a style guide, does this update it or create a new one? Can I choose?</summary>

You can choose. While working on a project, Maker will also prompt you to save recent design changes to a style guide if it detects you asked it to make changes to a design element. When you ask Maker to “save to style guide,” it knows if the project is already linked to a style guide and only updates the linked style guide, and will not create a new style guide unless asked explicitly.

</details>

<details>

<summary>If names or settings clash with my current guide, how do I pick which one to keep?</summary>

Maker will decide which one to keep and which one to omit.

</details>

### Speed, Limits & Reliability

<details>

<summary>How long does a typical import take? Is there a progress bar?</summary>

The amount of time it takes depends on the size of the context given to Maker. Large files and too many screenshots can slow it down. It can take several minutes. There is no progress bar at the moment.

</details>

<details>

<summary>Are there limits on the number of pages or asset sizes Maker's Style Guide can handle?</summary>

The real limit is the context window, which is 200,000 tokens. We have no limit on asset size.

</details>

### General Questions

<details>

<summary>If I update my Style Guide, will existing projects update automatically?</summary>

No. Existing AI-generated projects never auto-update, and republishing won’t apply new styles. To use the latest Style Guide, **Remix** the project with the current style guide—this creates a new copy so the original stays intact **while you test and fix any compatibility issues** from the updated Style Guide.

</details>

<details>

<summary>If a font is a Google Font, will it be available automatically, or do I still need to upload files?</summary>

No need to upload Google Fonts; you can ask Maker to use the Google Font of your choice in the style guide instruction doc or the context field. For example, add “Use Playfair for the headings and Inter for the body text,” and Maker will know how to do that.

</details>

<details>

<summary>If I import into a project and then “save as style,” does that update the current style or create a new style?</summary>

It depends on how the project was created. Projects started with a style guide can modify the style guide they’re linked to. Projects created without a style guide will be saved to a new style guide.

</details>

<details>

<summary>If a new style is created, is there a way to merge it into the existing guide?</summary>

Currently, there is no option to merge two style guides.

</details>

<details>

<summary>Are there versions or changelogs for style guides so one can roll back after an import?</summary>

There is no versioning at the moment for style guides.&#x20;

</details>

<details>

<summary>If some font uploads fail, can I still proceed with the project and fix items later?</summary>

Yes, you can fix those later by uploading font files and regenerating the style guide.

<br>

</details>

<details>

<summary>When a font is missing, what is the fallback?</summary>

Fallback fonts are defined by Maker automatically and we will try to use system fonts as a fallback.

<br>

</details>

<details>

<summary>What happens when a font is missing—do I get a prompt to add it?</summary>

&#x20;Yes, you’ll see a button “Missing fonts” in the project preview.

</details>

<details>

<summary>Are there any limits on the number/size of font files and assets per style guide?</summary>

There’s no limit to the number of fonts or assets you can add, but each uploaded file is limited to 5 MB.

</details>

<details>

<summary>Where are uploaded fonts stored? Is it per style guide or account?</summary>

Fonts are stored in an S3 bucket at `/fonts/{orgId}/theme/{themeId}`. They’re shared within a style guide, keeping them organized by the style guide.

</details>

<details>

<summary>Can I continue adding assets (screenshots, palettes, logos) to the same style guide to incrementally upload additional fonts and brand details, or do I need to create a new guide each time?</summary>

Yes, you can continue adding assets and regenerate existing style guides at any time.

***NOTE:*****&#x20;Regenerating or editing a style guide doesn’t automatically update projects created from an older version. To apply changes, remix the project with the theme; fix any incompatibilities in the new remix while the original remains intac**t.

</details>

<details>

<summary>For custom fonts, which file formats are supported?</summary>

Supported font formats: TTF, WOFF, WOFF2, and OTF.&#x20;

</details>

<details>

<summary>How are weights/styles mapped from Figma text styles to the Style Guide?</summary>

We import the **style names** (family + weight/italic) as text tokens, but Figma doesn’t provide the actual font files—so they come in as **Missing**. Upload the correct fonts to your Style Guide, then use **Missing Fonts** in the project to map each style to the matching family/weight. Once mapped, all tokens resolve; if an exact weight isn’t available, we fall back to the closest weight.

</details>

<details>

<summary>If the imported Figma designs conflict with my Style Guide, which wins? </summary>

Imported layouts remain intact; Style Guides govern AI-generated and edited outputs. To enforce a new style across an imported project, Remix it and reapply the Style Guide

</details>

<details>

<summary>Can I make a Style Guide the default for all new projects?</summary>

Yes. Set it as the default in Settings → Style Guide; new projects will start with it.

</details>

<details>

<summary>How can I make a new page match the design style and fonts of an existing project?</summary>

There are two good options, depending on what you are trying to do:

**Option 1: Duplicate Project 1 (fastest way to match the design exactly)**\
If you want Project 2 to inherit the exact same look and feel, duplicate Project 1 and use it as your starting point. Then replace the content and adjust sections as needed.\
You can duplicate from the **top-left dropdown menu**.

**Option 2: Save Project 1 as a Style, then apply it to Project 2 (best when Project 2 already exists)**\
If Project 2 is already built but you want it to adopt the same style as Project 1, save Project 1 as a Style and then apply it to Project 2 using **Remix**.

**How to apply a saved style to Project 2 (while keeping structure and content):**

1. Open **Project 2**.
2. Click the **top-left dropdown menu**.
3. Select **Remix**.
4. Choose the **saved style** from Project 1.
5. Run Remix to update the project’s styling (fonts, visual language, design system) while keeping the existing content and structure.

**Tip:** If your goal is a perfect visual match and you have not built Project 2 yet, duplicating Project 1 is usually the simplest. If Project 2 is already created, Remix is the best way to switch it to the saved style.

</details>

<details>

<summary>Can I export my Style Guide?</summary>

Yes, that option is available in the Style Guide. Open the style guide you created, click the three dots in the top-right corner, and select the option to export a `design.md` file. The exported file will include all of your style guide details.

<br>

</details>

***


# Components

You can reuse components across different projects, and you can also save them to a style guide.

***

{% embed url="<https://vimeo.com/1145946645?fe=ci&fl=sv&share=copy>" %}

### **Save a component to a style guide**

1. Open the project.
2. Click **Project options** (the dropdown next to the project name in the top-left).
3. Select **View components**.
4. In the left sidebar, choose a component, then click **Save to style guide** (top-right).
5. Pick the style guide to save it to.

Next time you create a project from that style guide, it will automatically include all components saved to it.

***

### **Reuse components**

1. In your project, click the **+** next to the prompt field and select **“Insert component.”**
2. Choose the source for the component:
   * **Current project**
   * **Another project**
   * **Current style guide** (if the project uses one)
3. Browse the available components, select the one you want, and click **“Insert into project.”**
4. Optionally, refine the prompt to specify where to insert the component or any changes you’d like to make.

***

### **Adding a component that exists in a project but isn’t available to insert**

1. Open the project.
2. Click **Project options** (next to the project name in the top-left).
3. Click **View components**.
4. Review the list. If a component is missing, click **Select element from project** (top-right).
5. In the preview, click the element you want to extract.


# Project Remix

“Remix” lets you fork any existing Maker project—yours or someone else’s—so you can experiment, customize, or share a template without affecting the original.

***

{% embed url="<https://vimeo.com/1146578809?fe=ci&fl=sv&share=copy>" %}

### What Is a Remix?

A Remix is a complete copy of a project at a specific point in time.

* The original project remains unchanged.
* Your Remix lives in **Projects** alongside your others.
* Ideal for branching experiments, building on community templates, or preserving a stable baseline.

***

### How to Create a Remix

1. Open the project you’d like to remix.
2. Click the chevron down (⌄) next to the project name to open the options menu.
3. Select Remix.
4. Choose a remix style — for example *Professional, Fun, Minimal, Modern, etc.*
5. Maker generates a transformation plan. Review it, then click Continue.
6. Click ↵ Go.

***

### Use Cases

* **Experiment Safely**: try bold UI changes without risking your production project.
* **Template Libraries**: publish a polished Remix as a starter template.
* **Collaboration**: ask teammates to remix your project.

***


# Publish

Make your Maker project available to the world, or keep it private, right from the editor.

{% embed url="<https://vimeo.com/1097293527?share=copy#t=0>" %}

### 1. Publishing Your Project

1. In the top-right corner of the editor, click **Publish**.
2. If you’ve never published before, you’ll see **Publish Now**. Click it to go live.
3. **Pre-publish checks**- When you're ready to publish, Maker will guide you through security and quality checks before going live.&#x20;
4. After publishing, you can choose how to deploy: either embed the project into an existing page on your website, or connect it to a custom domain. If you share a URL where you want to embed it, Maker will detect the platform and provide step-by-step instructions specific to that platform, along with the embed code you'll need.

***

### 2. Preview vs. Published

<table data-card-size="large" data-view="cards"><thead><tr><th></th><th></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><strong>Live Preview</strong></td><td>Every change you make shows up instantly in the right-hand preview pane. This is your “draft” view—perfect for iterating before anyone else sees it.</td><td><a href="/files/DXL3FnxHNuGxFPE3J1Xh">/files/DXL3FnxHNuGxFPE3J1Xh</a></td></tr><tr><td><strong>Published URL</strong></td><td>Once you hit <strong>Publish</strong>, Maker assigns a permanent public URL (or private link) that you can share with teammates or embed on your site.</td><td><a href="/files/F3V1LK403l5lNr9GTRXX">/files/F3V1LK403l5lNr9GTRXX</a></td></tr></tbody></table>

***

### 3. Managing Privacy

* **Make Public/Private**: Click the ▼ arrow on the top left, then choose **Make Private** to restrict access or **Make Public**. This option is available only on the Pro and Team plans.&#x20;

***

### 4. Quick Actions

Click the project name dropdown (upper-left) for shortcut actions:

* **Make Private**
* **Duplicate** (create a copy)
* **Remix** (fork a shareable template)
* **Save to Brand Style** (capture current theme)

> 📌 Tip: Use Duplicate before major refactors so you can always roll back to a known state.

***

### 5. Rollback & Versioning

Maker keeps your code history automatically. If you need to revert:

1. Click the **Version** **History** found under the Publish dropdown.
2. Browse snapshots by timestamp.
3. Click **Rollback** on any version to restore the editor back to that point.

***


# Hosting & Updates

## Hosting & Updates

<details>

<summary><strong>How is my content hosted?</strong></summary>

We manage the hosting for all your content, ensuring it’s stored securely and delivered quickly. You don’t need to worry about server maintenance or uptime.

</details>

<details>

<summary><strong>What does the update process involve?</strong></summary>

Updates are simple and intuitive. Use our chat-based editor to interactively modify your content with ease.

</details>

<details>

<summary><strong>How do I push my updates live?</strong></summary>

After editing, click **Publish**. This action pushes your changes live so your audience sees the latest version immediately.

</details>

<details>

<summary><strong>Can I preview my updates before publishing?</strong></summary>

Yes—our editor allows you to preview changes before going live, so you can confirm everything looks as intended.

</details>

<details>

<summary><strong>How quickly are published updates reflected on my site?</strong></summary>

Once you click **Publish**, changes deploy in real time. Depending on network conditions, updates should be visible almost immediately.

</details>

<details>

<summary><strong>What if I encounter issues with my updates?</strong></summary>

You can revert to a previous version via the **History** tab or contact our support team for troubleshooting and assistance.

</details>

<details>

<summary><strong>Is there any downtime during the update process?</strong></summary>

Our system is designed for seamless updates with minimal disruption. Content transitions occur smoothly without noticeable downtime.

</details>

<details>

<summary><strong>Who can I contact for hosting or update-related support?</strong></summary>

For our Pro and Team plans, our dedicated support team is available via the in-app chat to help with any hosting or update questions.

</details>

<details>

<summary>Can I connect different custom domains to different projects?</summary>

Yes. You can assign unique custom domains to different projects.

**How to set it up**

1. Go to **Settings** and connect your domain.
2. Open the **project** you want to link.
3. In the **Publish** menu, click the **dropdown**.
4. Under **Link**, choose from the list of available **domains** and confirm.

</details>

***

## Custom Domains

**Open Custom Domain Settings**

In the editor, click the **Settings** ⚙️ icon in the lower-left, then select the **Domains** tab.

{% stepper %}
{% step %}

#### **Check organization**

Check the organization you want to connect the domain for; you can also change the organization using the **switcher** from the upper right corner.
{% endstep %}

{% step %}

#### **Select root project**

A root project is the project that will be available on your hostname (e.g. `app.mycompany.com`), while other projects will be available on slug/path with your hostname (e.g. `app.mycompany.com/<project_slug>`)
{% endstep %}

{% step %}

#### **Connect domain**

Click on **Connect custom domain,** and it will open a modal and follow the instructions below:

{% tabs %}
{% tab title="Step 1" %}
Click continue on the welcome screen.

![Click continue on the welcome screen.](/files/nKB81RwWWlU77hnX1Gz2)
{% endtab %}

{% tab title="Step 2" %}
Provide your desired domain/subdomain.

<figure><img src="/files/1OvWIb5RjWjQAvyNqVft" alt=""><figcaption><p><em>Provide your desired domain/subdomain</em></p></figcaption></figure>
{% endtab %}

{% tab title="Step 3" %}
As soon as you provide a domain/subdomain, we will try to identify your registrar. If we are unable to detect it, we will provide a list of supported registrars.

![Once you have selected one, you will be provided with an option to automatically authorize the registar to add relevant DNS records or you can manually copy it and fill it in your domain’s DNS records or forward it to a relevant person.](/files/5XCHoOiALeIjN80bKapG)
{% endtab %}

{% tab title="Step 4" %}
Once you have selected one, you will be provided with an option to automatically authorize the registrar to add relevant DNS records.

![](/files/2pseurzp2cgU9w6O8f0T)

**Manual Setup**\
Or you can manually copy it and fill it into your domain’s DNS records.

![Share the link with teammates](/files/P6Gy7ta3lBzPa5rNbqSG)

**Forward Login to Someone Else** \
Or forward it to a relevant person.

![Share the link with teammates](/files/IKZIFHVN4TUPAODCwa9Z)
{% endtab %}

{% tab title="Done" %}
Once all these records are updated, it will take a maximum of **24 hours for your projects to be available in the given domain/subdomain**.
{% endtab %}
{% endtabs %}
{% endstep %}
{% endstepper %}

***


# Makeover

The Makeover feature allows you to instantly transform any page in real time. Redesign and optimize your page for a more modern, engaging, and conversion-focused experience.

***

### Makeover Options

Makeover gives you three ways to improve a page: **Auto, Design, and CRO**.

**Auto** is the default and lets AI decide what the page needs most. If the existing design already feels modern and up to date, Makeover focuses on conversion improvements while preserving the original look and feel. If the page feels outdated, AI shifts toward a more substantial redesign.

You can also choose **Design** when you want a fresh visual direction, or **CRO** when you want to improve clarity, structure, and conversion performance without significantly changing the current design.

### Using Styleguide

Makeover works with or without a style guide. When a style guide is provided, it influences the final colors, fonts, and visual direction. Without one, AI determines the direction based on the page and the option you select.

***

### How to Use Page Makeover

* Open **Tools** and select **Makeover**.

<figure><img src="/files/Yd6vZalIsgpTlWk2l4Je" alt=""><figcaption></figcaption></figure>

* Enter the URL of the page you want to improve.
* Choose a makeover focus:
  * **Auto** lets AI decide between Design and CRO.
  * **Design** creates a more substantial visual redesign.
  * **CRO** improves conversion while preserving the current look and feel.

<figure><img src="/files/WUSyalpTqvFei8sY16Ch" alt=""><figcaption></figcaption></figure>

* Add a style guide to influence the colors, fonts, and design direction, or continue without one to let AI decide.
* Run Makeover to generate the updated page.

***

### Tips

* Select the Balanced at the minimum for Makeover.

<figure><img src="/files/xK8jxWmllcLHats8XqxE" alt=""><figcaption></figcaption></figure>

* If there are certain inputs you'd like to add for the makeover, do so in the prompt box along with the URL
* Always **Review Makeover Plan** and edit it, if necessary, before proceeding to implementing the plan.&#x20;

***

### Next Steps

👉 Try Page Makeover now and give one of your pages a quick upgrade.\
👉 Continue with Prompt to Page to generate entirely new sections.


# Create from Image

Turn any screenshot, mockup, or design frame into a live, editable page. Upload an image, and Maker instantly analyzes it to generate a matching layout you can customize

***

{% embed url="<https://vimeo.com/1113137586?share=copy#t=0>" %}

### What is Create from Image?

This feature is for anyone with a visual starting point—just upload an **image** of your design (screenshot or exported PNG/JPG). Whether it’s a mockup, an inspiration image, or an **image export** from your design tool (e.g., Figma or Photoshop), Maker converts the image into structured sections and components that match your brand styles.

The result is:

* A page that visually matches your reference image
* Editable blocks and sections, not just a static copy
* A faster way to turn designs into live pages

***

### How to Use Create from Image

{% stepper %}
{% step %}
In Maker, click the **plus button** to add a new page.
{% endstep %}

{% step %}
Select **Upload image**.
{% endstep %}

{% step %}
Choose an image from your computer (e.g., a screenshot or image export from a design tool like Figma).
{% endstep %}

{% step %}
Add a **prompt** to describe the page or guide the layout.
{% endstep %}

{% step %}
Click **Start**.
{% endstep %}

{% step %}
Maker will analyze the image, generate a page plan, and build the layout.
{% endstep %}

{% step %}
Select **Continue and implement the plan** to create the editable page.
{% endstep %}
{% endstepper %}

***

### Exploring the Results

Once the process is complete, you’ll have a new page that reflects the structure and aesthetic of your uploaded image.

* **Layout Accuracy**: Maker rebuilds the page with sections and spacing similar to your mockup.
* **Editable Content**: Every block is customizable — text, images, and styles can be adjusted.
* **Brand Alignment**: The design adapts to your brand tokens and styling.
* **Fast Publishing**: Review in full screen and publish immediately if it looks good.

***

### Example

For instance, uploading a Figma frame and adding a short prompt will generate a page that mirrors the original design. Within seconds, you’ll see a custom layout that looks and feels like your mockup — but is fully editable inside Maker.

***

### Tips

* For best results, upload a screenshot or image export of the specific section/module—rather than the entire layout—and keep adding images of additional sections/modules to build the full page.
* Use high-quality images with clear layouts for more accurate reconstruction.
* Add descriptive prompts (e.g., “landing page for summer campaign”) to guide the structure.
* After generation, fine-tune sections using Maker’s editor to ensure everything matches your intent.

***

### Next Steps

👉 Try **Create from Image** with your latest mockup or screenshot.\
👉 Explore Prompt to Page for building new pages from scratch with just a prompt.


# Chat mode

Use Chat when you want to talk things through with Maker instead of generating code or components right away.

***

{% embed url="<https://vimeo.com/1150322645?fe=ci&fl=sv&share=copy>" %}

Turn the **Chat** toggle on to:

* Ask questions about your project
* Brainstorm ideas or get suggestions
* Clarify what you want to build *before* you start coding or creating blocks

> **Note:** Each Chat interaction still uses a Maker credit, just like other prompts.

When you’re ready to generate actual components or edits, turn **Chat** off and continue using Maker as usual.

***


# Image/Video Generation

To use Maker's media generation, first click an image on your page and choose Generate. Then pick whether you want to create an Image or a Video from the tabs at the top.

***

{% embed url="<https://vimeo.com/1128774132?share=copy&fl=sv&fe=ci>" %}

#### Image tab

* **Write or generate a prompt**
  * Type your own prompt, **or**
  * Click **Describe** to have Maker automatically describe the selected image and fill in a detailed prompt for you. You can edit this text before generating.
* Choose an image model (e.g. **Flux Pro v1.1 Ultra**, **Nano Banana**, etc.). Each model shows its **maximum credit cost** per generation.
* Optionally adjust **Style**, **Composition**, **Effects**, **Ratio**, and the number of **Variants**.
* Click **Generate** to create your images, then choose **Replace with image 1–4** to swap the image on your page.

***

#### Video tab

* With the same selected image and prompt, or click **Describe** to generate a prompt.
* Choose a video model (e.g. **Veo 3 Fast**, **Kling 2.5 Turbo**, etc.). Each model shows **up to X credits** so you know the maximum cost.
* Optionally tweak **Style**, **Composition**, **Effects**, and **Ratio**, then click **Generate** to create your video.

After generation, you’ll see a **video preview** along with a **Replace with video** button.\
Click **Replace with video** to swap the original image on your page with the new Maker-generated video.

***

> **Credits:** Every image **and** video generation uses Maker credits. The model you choose and the number of variants determine the final credit cost shown on the **Generate** button.

***

#### Download Assets

You can download all of your AI-generated assets from Maker and reuse them anywhere. Use it in other Maker projects or outside of Maker for ads, email, social, and more. Just click Download to grab your assets.

**Steps**

* Select the image
* Click **Generate**
* You’ll see the **Download** option at the top right, click it to save your asset

<figure><img src="/files/x4XcZC5eu9RZPiC3OKEt" alt=""><figcaption></figcaption></figure>

***

#### Download Assets

You can now view all your Maker-generated assets in one place under **Artifacts**. When you’re building a new project, click **Add images & files** to open the file picker, then switch to the **Artifacts** tab to browse and reuse anything you’ve generated. Select an asset to instantly add it to your current Maker project.

**Steps**

* Click **Add images & files**
* In the modal, switch from **Uploads** to **Artifacts**
* Select an AI-generated asset to add it to your project

<figure><img src="/files/3mwMVwcIsA0UkiC0SjVm" alt=""><figcaption></figcaption></figure>

***


# Design panel

Use the Design panel to fine-tune the look of any element on your page.

***

{% embed url="<https://vimeo.com/1145329323?share=copy&fl=sv&fe=ci>" %}

1. **Select an element**

   * **Select from preview** (cursor icon) and then click the element,
   * or use **Select from layers** (stack icon) to choose an element from the layer tree.

   *If nothing is selected, the panel will show “Select an element to edit its properties.”*
2. **Edit properties**\
   Once an element is selected, the Design panel updates to show the options available for that element (for example: Content, Layout, Typography, Background, Border, etc.). Adjust these settings to update the selected element’s design.

> **Breakpoints:**\
> The Design panel is breakpoint-aware. Any changes you make only apply to the breakpoint you’re currently editing (desktop or mobile). Switch between breakpoints to customize the design for each layout.

***


# Connectors

Use Connectors to link Maker to your other tools so you can pull in content, data, and media without leaving the editor.

***

{% embed url="<https://vimeo.com/1148616585?fe=ci&fl=sv&share=copy>" %}

#### Access connectors

1. In the editor, click the **+** button in the prompt box.
2. Choose **connectors** from the menu.
3. From here you can enable and disable connector or click on Manage connectors&#x20;
4. Selecting Manage connectors opens **Settings → Connectors**.

Alternatively, you can also go to **Settings → Connectors** directly.

***

#### Add or manage a connector

On the **Connectors** tab you’ll see available integrations, such as:

* **Atlassian** – connect Jira & Confluence content
* **Cloudinary** – manage and deliver your images & videos
* **Notion** – connect your Notion workspace
* **Add custom connector** – connect other data or services

To add one:

1. Click the **+** on the connector card.
2. Follow the prompts to sign in and authorize access.

Once connected, the connector will be available inside Maker wherever that integration is supported (for example, when inserting content or media into your projects).

Maker offers several ways to connect your store's product data, either through **MCP connectors** (for AI-assisted chat and search) or **native integrations** (built directly into Maker for use inside projects).

### MCP Connectors

MCP (Model Context Protocol) connectors let you chat with and query external data sources in natural language.&#x20;

* Shopify Storefront MCP (*Enterprise plan) :* Chat with your own Shopify store. Search your products and ask natural-language questions about your own catalog — scoped only to your store's data.
* Shopify Global Catalog MCP ( All plans):  Chat with Shopify's global catalog. Search products and ask questions across all Shopify stores, not just your own — useful for competitive research or cross-store product discovery.
* Atlassian ( All plans): Access to Jira & Confluence, for pulling tickets and documentation in as context.
* Cloudinary (All plans) : Manage, transform, and deliver images and videos — for teams whose media library lives in Cloudinary rather than Maker's own asset storage.
* Figma (All plans): Pulls in Figma design context so Maker can generate code and content that matches an existing design file.
* Notion (All plans): Connects your Notion workspace to search, update, and power workflows across tools — for example, pulling in brand docs or content briefs.

### Native Integrations

Native integrations are built directly into Maker (not MCP-based) and connect data sources for use in projects, reporting, and workflows.

* Your Store Products (*Enterprise plan):* A platform-agnostic integration that lets Maker search and use your store's product data inside projects. Works with any ecommerce platform, not Shopify-specific.
* Shopify Storefront API (*Enterprise plan):* Pulls live product data directly from your Shopify store into your Maker projects — real-time inventory and pricing, for building projects rather than conversational search.
* Google Analytics — Analytics (*Max plan):* Powers AI-driven insights by reading traffic and conversion data from your GA4 property. Broader, general-purpose analytics and performance reporting.
* Google Analytics — Variants (*Max plan):* Tracks A/B experiment events. Sends variant impression and conversion events to GA4 — built specifically for testing different versions of a page or email.
* Google Ads (*Max plan):* Connects Google Ads to track ad performance and conversions for your organization.
* Meta Ads (*Max plan):* Connects Meta Ads to access ad accounts and product catalogs for your organization (Facebook/Instagram equivalent of Google Ads).
* Maker Insights (*Max plan):* AI-powered analytics and insights generated from your own Maker data, as opposed to an external analytics platform like GA4.

### Quick Reference

| Connector                    | Type   | Plan       | Scope                                |
| ---------------------------- | ------ | ---------- | ------------------------------------ |
| Shopify Storefront MCP       | MCP    | Enterprise | Your store only                      |
| Shopify Global Catalog MCP   | MCP    | All        | All Shopify stores                   |
| Your Store Products          | Native | Enterprise | Any ecommerce platform               |
| Shopify Storefront API       | Native | Enterprise | Your store only (live data feed)     |
| Google Analytics — Analytics | Native | Max        | General traffic/conversion analytics |
| Google Analytics — Variants  | Native | Max        | A/B experiment tracking              |
| Google Ads                   | Native | Max        | Ad performance                       |
| Meta Ads                     | Native | Max        | Ad performance                       |
| Maker Insights               | Native | Max        | Maker-native analytics               |
| Atlassian                    | MCP    | All        | Jira & Confluence                    |
| Cloudinary                   | MCP    | All        | Image/video management               |
| Figma                        | MCP    | All        | Design context                       |
| Notion                       | MCP    | All        | Workspace docs/workflows             |

### Add Custom MCP

For any MCP server not listed as a pre-built connector, use **Add custom MCP** to connect it manually. You'll need:

* **Name** — a label to identify the connector in Maker
* **Remote MCP server URL** — the endpoint of the MCP server you're connecting to
* **Advanced settings** (optional) — additional configuration such as authentication headers

This is the option to use when connecting a private, internal, or third-party MCP server that isn't part of Maker's built-in list (e.g., a custom-built tool or a vendor's MCP endpoint not yet natively supported).


# Maker Insights

Insights helps you monitor performance across Maker—then drill down into heatmaps, element-level engagement, and scroll depth. Available on Max and Enterprise plans.

<figure><img src="/files/8EV7HonZ7Ar7jc9SKMsV" alt=""><figcaption></figcaption></figure>

***

### What  can you do in Insights

* See **top-level performance trends** (Pageviews, Unique Visitors, Avg. Time on Page, CTR, clicks)
* Review performance across all Maker content in an **organization-level dashboard,** per product &#x20;
* Drill into a specific project to see **page-level metrics**
* Use a **heatmap overlay** to visualize engagement on the page
* Get **element-level metrics** (including **eCTR**) to understand what users engage with
* Understand **scroll depth** (how far users make it down the page)
* Connect **Google Analytics, Google Ads, and Meta Ads** to see that data alongside your Maker performance
* Ask **Ask Maker**, our AI assistant, plain-language questions about your site and campaign performance
* Build and save **Custom Reports** for the metrics you check most

\*some features may vary based on the Maker product used <br>

***For features listed as Beta, please contact Maker support for early access***

***

### Navigating Insights

The left-hand navigation in Insights is organized into a few sections:

* **Ask Maker** – opens the AI assistant panel, where you can ask questions about your data in plain language
* **Products** – Ai, Pages, and Nav, for viewing performance by product&#x20;
* **Sources** – connect and view data from outside platforms, including Google Ads
* **Custom Reports** (Beta) – build and save reports tailored to what you want to track
* **Recent chats** – your past conversations with Ask Maker, so you can pick up where you left off

***

### Organization-level Insights

Use the Dashboard to view overall performance for a selected organization and quickly spot which projects are driving results.

<figure><img src="/files/2Cld7tlxqdpd0rf2QtjG" alt=""><figcaption></figcaption></figure>

#### Organization switcher

Use the organization dropdown at the top to switch between organizations/workspaces.

#### Date range + Apply

Select a date range, then click **Apply** to refresh all metrics and charts.

#### Top-level metrics

At the top you’ll see trend charts for:

* **Pageviews**
* **Unique Visitors**
* **Avg. Time on Page**
* **CTR**
* **Clicks**

#### Project table

The table shows the list of Stories/Projects in the selected organization, including metrics like Pageviews, Unique Users, CTR, Clicks, and Avg Duration.

<figure><img src="/files/m3traDbEISjSenhKN3sx" alt=""><figcaption></figcaption></figure>

#### Filter by Collections&#x20;

If you've built collections in Maker, you can use them to filter insights.

#### **Download CSV**

Export reports as a CSV file.

***

### Story/Project-level Insights

Click into any Story/Project to view page-level trends plus a visual overlay of engagement on the page itself.

<figure><img src="/files/7404aijFhqb5JT60zsLG" alt=""><figcaption></figcaption></figure>

#### Page-level metrics&#x20;

At the top you’ll see a snapshot of key page metrics (with trend lines) for the selected date range.

#### Date range

Use the date picker to adjust the reporting window.

#### Device toggle (Desktop / Mobile)

Switch the device view to see device-specific metrics and overlays, so you’re always viewing performance for that device. When you change device:

* The **top-level metrics update**
* The **heatmap/overlay updates**<br>

#### Outbound Click Insights

Depending upon where the user has clicked on the page, this is aggregated data on the URL level.&#x20;

#### Heatmap toggle

Turn on the heatmap to visualize engagement directly on the page.

#### Scroll depth

The scroll indicator shows how far users scroll, based on the **number of unique users** reaching each depth.

#### Section Views

We consider the section view if even one element inside the section is visible, essentially the maximum of all elements within a section.

#### Element-level insights

When the heatmap is on, click/hover an element to open an **Element Insight** panel showing:

* **eCTR**
* **Clicks**&#x20;
* **Element Views**\
  …and supporting context metrics (like page-level totals) for comparison.

***

### Understanding eCTR

**eCTR (Element Click-Through Rate)** helps answer: *“When users actually see this element/section, how often do they click it?”*

In practice:

* **Element Views / Section Views** represent how many times something was *viewed* (often estimated using pageviews and scroll depth).
* **eCTR** is clicks / element or section views.

***

## Data Sources

Insights isn’t limited to your Maker data anymore. Under **Sources** in the left nav, you can connect outside platforms so their metrics show up alongside your Maker performance:

* **Google Analytics** – top pages, traffic, and where visitors drop off
* **Google Ads** (Beta) – ad spend, ROAS, cost-per-click, and conversion trends across your campaigns

Click **Connect** next to a source to link the account. Once connected, that source's data becomes available both in its own report and as something you can ask **Ask Maker** about directly.

#### Google Ads Insights (Beta)

Once Google Ads is connected, select it under **Sources** to see a full ad performance report for the selected account and date range:

* **Top metrics**: Spend, Revenue, Avg. CPC, Conversions, and Search Impression Share, each with a trend line and change vs. the prior period
* **Campaign performance**: a table of campaigns, with a callout for ones falling below their ROAS target so you know where to look first
* **Signal-level performance**: switch between Keywords, Search Terms, Audiences, and Landing Pages to see what's working and what's not, including a callout for high-traffic, low-converting keywords worth reviewing

***

### Ask Maker\* (Beta)

Ask Maker is an AI assistant built into Insights. Instead of digging through dashboards, you can ask it questions in plain language and get an answer pulled from your connected data.

To get started, click **Ask Maker** in the left nav. You'll see suggested questions for each data source, for example:

* **Maker Insights** – "How are my AI sites performing?"
* **Google Analytics** – "What are my top pages this month?"
* **Google Ads** – "How is my ad spend performing?"
* **Meta Ads** – "What are my best-performing Meta campaigns?"

If a source hasn't been connected yet, you'll see a **Connect** link next to it. Once connected, you can ask Ask Maker follow-up questions directly in the chat, and your past conversations are saved under **Recent chats** so you can return to them later.

*\*This feature uses Maker credits*&#x20;

<figure><img src="/files/cCTJFlQGhZg4jm5Obfhe" alt=""><figcaption></figcaption></figure>

***

### Custom Reports\* (Beta)

Custom Reports let you build and save a report around the specific metrics and sources you check regularly, instead of navigating between separate dashboards each time. You'll find **Custom Reports** in the left nav, next to Sources.

A few reports come pre-built to get you started, for example **Overall performance**, which generates a website performance report from GA4 data. You can also request a new one built around whatever you want to track.

When you run a report, you'll be asked to confirm the settings first, for example:

* **GA4 property** – select which property to pull data from. This matters if you have more than one GA4 property connected, so you want to make sure the report runs on the intended one
* **Date range** – the reporting window, shown against the previous period for comparison

Review the settings and click **Run report** to generate it.

Once the report runs, use prompts to ask follow-up questions about the data, the same way you would in Ask Maker.

*\*This feature uses Maker credits*&#x20;

<figure><img src="/files/B7VyiLI8N0f2C7nMw7c0" alt=""><figcaption></figcaption></figure>

***

## Best-practice workflow

1. **Pick a date range** and click **Apply**
2. On the Dashboard, identify Stories with unusually high/low **CTR**, **Clicks**, or **Avg. Time on Page**
3. Open a Story and **switch device views** (Desktop vs Mobile)
4. **Enable heatmap** and scan for:
   * High-engagement elements (working well)
   * Low-engagement CTAs (may need repositioning/copy changes)
5. Use **scroll depth** to confirm whether users are reaching key sections (and move important CTAs higher if needed)
6. Compare **eCTR** across key elements to decide what to iterate next
7. **Connect your ad and analytics accounts** under Sources so that ad spend and site engagement live in one place
8. Use **Ask Maker\*** for a quick, plain-language check-in instead of pulling up each dashboard individually

*\*This feature uses Maker credits*&#x20;

***

## Troubleshooting / FAQ

**“Why don’t I see data?”**

Common causes:

* The Story/page didn’t receive traffic in the selected date range
* The date range is too narrow
* You’re viewing the wrong organization
* You’re viewing the wrong device (desktop vs mobile can differ significantly)

**“Why don’t the top metrics match the table totals?”**

The table may only load a subset of Stories initially. Scroll to load more rows—totals may change as more Stories are loaded.

**“Why doesn't Ask Maker have data for Google Ads/Meta Ads/Google Analytics?”**

That source hasn't been connected yet. Click **Connect** next to the source, either from the Ask Maker panel or under **Sources** in the left nav.

***

## Glossary

**1) Pageviews**\
Number of times a page is loaded (or reloaded) in a browser.

**2) Clicks**\
Number of times a user clicks an **outbound link** (for example: a button, linked image, or linked text).

**3) CTR (%)**\
Percentage of pageviews that resulted in an outbound click.\
**Formula:** `(Clicks ÷ Pageviews) × 100`

**4) Avg. Time on Page**\
Average time visitors spend on the page.

**5) Scroll Depth**\
A measure of how far users scroll down the page (typically expressed as a %).

**6) Section Views**\
Estimated number of times a section was viewed.\
**Formula:** `Pageviews × Scroll Depth (%)`

**7) Section Clicks**\
Total clicks on all clickable elements within a section.

**8) eCTR (%)**\
Engagement rate for a specific element or section, based on how often it was actually *viewed*.\
**Formula:** `Clicks on element/section ÷ (Pageviews × Scroll Depth (%)) × 100`

**9) Element Clicks**\
Total clicks on a specific element (button, linked text, or linked image).

**10) ROAS (Return on Ad Spend)**\
Revenue generated per dollar of ad spend, shown against a campaign's target in Google Ads Insights.

**11) Avg. CPC (Cost Per Click)**\
Average amount spent per click on an ad.

**12) Search Impression Share**\
The percentage of eligible impressions your ads actually received on the Search Network.

**13) Quality Score**\
Google's rating of the relevance and quality of your keywords and ads, shown in Signal-level performance.


# SSR component support

Server-side rendering means your content is fully prepared on the server before it reaches your visitor's browser.

***

### K**ey Benefits**

* **Faster Loading**: Users see content immediately instead of waiting for JavaScript to build the page
* **Recommended for SEO and AI visibility.** If you need your Maker content to be discoverable by search engines and AI assistants like ChatGPT, Claude, and Perplexity - SSR Component is one of two delivery methods we recommend. AI crawlers do not execute JavaScript. They fetch a page's raw HTML and stop. Delivery methods that inject Maker content via JavaScript (Simple Embed, Enhance) produce content that is invisible to AI assistants, even though it looks perfectly fine to a human visitor and is indexed by Google. SSR Component renders your Maker content on the server, so it is in the page's initial HTML from the very first request. Every search engine and AI crawler reads it the same way they would read a hand-coded page.
* **Improved Accessibility**: Screen readers and other assistive technologies get complete content right away
* **Reliable Performance**: Your content displays properly even if JavaScript fails to load or is disabled

**⚠️&#x20;*****Important Note**: SSR may not work properly with pages that contain animated components or complex interactive elements that rely on client-side state. Animations and dynamic behaviors are captured as static snapshots during server-side rendering.*

***

### **Features**

* Server-side rendering for optimal performance
* SEO-friendly with meta tags and proper HTML structure
* TypeScript support
* Works with Next.js, React Server Components, and any React framework

### FAQ

<details>

<summary>Why does my Maker content show up visually but not in SEO tools or AI assistants?</summary>

Most SEO browser extensions and AI tools (ChatGPT, Claude, Perplexity) read a page's raw HTML - they do not wait for JavaScript to run. If your Maker content is delivered via Simple Embed or Enhance, it is injected into the page after the initial load by JavaScript. Those tools never see it. The SSR Component solves this by rendering the content server-side, so it is present in the HTML from the start.

</details>

<details>

<summary>Does SSR work for Google SEO as well?</summary>

Yes. Google uses a headless browser to render pages, so it can generally read JavaScript-injected content. But for consistent, delay-free indexing across Google, Bing, and AI crawlers, SSR is the most reliable approach. Content in the initial HTML is indexed faster and more reliably than content that requires JavaScript rendering.

</details>

<details>

<summary>Does structured data (FAQ schema) still work with SSR?</summary>

Yes, and it is worth knowing how this works across all delivery methods. When a Maker project includes schema markup (like FAQ JSON-LD), Maker automatically includes that structured data in the embed code itself -- meaning it lives in the raw HTML regardless of which delivery method you use. So even on JavaScript embed methods like Simple Embed and Enhance, your structured data is visible to crawlers and AI assistants.

What SSR and Custom Domain add on top of that is visibility for the full page content, the actual text, headings, and body copy. Structured data gets you into AI answers; native HTML delivery gets your full content read and indexed. Both matter, and SSR gives you both.

</details>

<details>

<summary>When should I use SSR Component vs. Custom Domain?</summary>

Use SSR Component when Maker is one block or section inside a page you manage in another CMS. Use [Custom Domain](https://docs.maker.co/tips-and-tricks/custom-domain) when the entire page is built in Maker. Both methods deliver the same crawlability benefit -- the right choice depends on who owns the page.

</details>

### Installation

```
npm install @maker/ssr-component
```

or

<pre><code><strong>yarn add @maker/ssr-component
</strong></code></pre>

or

```
pnpm add @maker/ssr-component
```

### Prerequisites

Before using this package, you'll need:

1. **API Key**: A Maker SSR API key (contact Maker team to obtain one)
2. **Project ID**: The unique identifier for your Maker project

Set your API key as an environment variable:

```
MAKER_SSR_API_KEY=your_api_key_here
```

***

### API Key Handling

The `MakerComponent` requires an `apiKey` prop to authenticate with the Maker SSR API. Here are the recommended patterns:

#### Environment Variable (Recommended)

Store your API key in environment variables and pass it to the component:

```
const apiKey = process.env.MAKER_SSR_API_KEY!;

<MakerComponent apiKey={apiKey} projectId="your_project_id" />;
```

#### Validation Pattern

```
const apiKey = process.env.MAKER_SSR_API_KEY!;

<MakerComponent apiKey={apiKey} projectId="your_project_id" />;
```

Always validate the API key before rendering:

```
export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY;

  if (!apiKey) {
    throw new Error("MAKER_SSR_API_KEY is required");
  }

  return <MakerComponent apiKey={apiKey} projectId="your_project_id" />;
}
```

#### Graceful Error Handling

For a better user experience, handle missing API keys gracefully:

```
export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY;

  if (!apiKey) {
    return <div>Configuration error: API key not found</div>;
  }

  return <MakerComponent apiKey={apiKey} projectId="your_project_id" />;
}
```

**Security Note:** Never expose your API key in client-side code. Always access it from environment variables on the server side.

***

### Usage

#### Next.js (App Router)

**Basic Usage:**

```
import { MakerComponent } from "@maker/ssr-component";

export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY!;

  return (
    <div>
      <h1>My Page</h1>
      <MakerComponent
        apiKey={apiKey}
        projectId="your_project_id"
        options={{
          debug: false,
          device: "desktop",
        }}
      />
    </div>
  );
}
```

**With API Key Validation:**

```
import { MakerComponent } from "@maker/ssr-component";

export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY;

  if (!apiKey) {
    return (
      <div>
        <h1>Configuration Error</h1>
        <p>MAKER_SSR_API_KEY is not configured</p>
      </div>
    );
  }

  return (
    <div>
      <h1>My Page</h1>
      <MakerComponent
        apiKey={apiKey}
        projectId="your_project_id"
        options={{
          debug: false,
          device: "desktop",
        }}
      />
    </div>
  );
}
```

**With Cache Busting:**

Use `cacheBust: true` to bypass the cache and fetch fresh content. This is useful during development or when you need to ensure users see the latest version:

```
import { MakerComponent } from "@maker/ssr-component";

export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY!;

  return (
    <div>
      <h1>My Page</h1>
      <MakerComponent
        apiKey={apiKey}
        projectId="your_project_id"
        options={{
          device: "desktop",
          cacheBust: true, // Bypass cache and fetch fresh content
        }}
      />
    </div>
  );
}
```

**With Version Specification:**

Use the `version` option to render a specific version of your Maker project:

```
import { MakerComponent } from "@maker/ssr-component";

export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY!;

  return (
    <div>
      <h1>My Page</h1>
      <MakerComponent
        apiKey={apiKey}
        projectId="your_project_id"
        options={{
          device: "desktop",
          version: "1767692001255", // Render specific version
        }}
      />
    </div>
  );
}
```

#### Next.js (Pages Router)

```
import { MakerComponent } from "@maker/ssr-component";

export default function Page({ pageData }) {
  return (
    <div>
      <h1>My Page</h1>
      {/* You'll need to implement the server-side fetch yourself */}
    </div>
  );
}

export async function getServerSideProps() {
  // Fetch data server-side
  const response = await fetch("https://ssr.maker.new/api/ssr/v1/content", {
    method: "POST",
    headers: {
      Authorization: `Bearer ${process.env.MAKER_SSR_API_KEY}`,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      idn: "your_project_id",
    }),
  });

  const pageData = await response.json();
  return { props: { pageData } };
}
```

#### Custom React SSR Setup

If you're using a custom React SSR setup, you can import and use the components directly:

```
import { MakerComponent } from "@maker/ssr-component";

// In your server-side rendering function
async function renderPage() {
  const apiKey = process.env.MAKER_SSR_API_KEY;

  if (!apiKey) {
    throw new Error("MAKER_SSR_API_KEY environment variable is not set");
  }

  return (
    <html>
      <body>
        <MakerComponent apiKey={apiKey} projectId="your_project_id" />
      </body>
    </html>
  );
}
```

***

### API Reference

#### MakerComponent

The main component for embedding Maker projects.

**Props**

<table><thead><tr><th>Prop</th><th width="222.81640625">Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td><code>apiKey</code></td><td><code>string</code></td><td>Yes</td><td>Your Maker SSR API key</td></tr><tr><td><code>projectId</code></td><td><code>string</code></td><td>Yes</td><td>Your Maker project ID</td></tr><tr><td><code>options</code></td><td><code>MakerComponentOptions</code></td><td>No</td><td>Configuration options (see below)</td></tr></tbody></table>

**MakerComponentOptions**

<table><thead><tr><th>Option</th><th width="310.61328125">Type</th><th>Default</th><th>Description</th></tr></thead><tbody><tr><td><code>debug</code></td><td><code>boolean</code></td><td><code>false</code></td><td>Enable debug logging</td></tr><tr><td><code>device</code></td><td><code>"mobile" | "desktop" | "tablet"</code></td><td>-</td><td>Specify device type for responsive rendering</td></tr><tr><td><code>cacheBust</code></td><td><code>boolean</code></td><td><code>false</code></td><td>Bypass cache and fetch fresh content</td></tr><tr><td><code>version</code></td><td><code>string</code></td><td>-</td><td>Specify version of the project to render</td></tr></tbody></table>

#### MakerClientScripts

A client-side component that handles script hydration. This is used internally by `MakerComponent` but can be used separately if needed.

**Props**

<table><thead><tr><th>Prop</th><th width="122.55859375">Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td><code>scripts</code></td><td><code>Script[]</code></td><td>Yes</td><td>Array of scripts to inject</td></tr></tbody></table>

**Types**

```
export type MakerComponentOptions = {
  debug?: boolean;
  device?: "mobile" | "desktop" | "tablet";
  cacheBust?: boolean;
  version?: string;
};

export type Script = {
  src: string;
  inline: string | null;
  type?: string;
};

export type PageData = {
  meta: Array<{
    charset?: string;
    name?: string;
    property?: string;
    content?: string;
  }>;
  fonts: string[];
  title: string;
  stylesheets: string[];
  inlineStyles: string[];
  scripts: Script[];
  body: string;
};
```

***

### Environment Variables

<table><thead><tr><th>Variable</th><th width="237.34765625">Required</th><th>Description</th></tr></thead><tbody><tr><td><code>MAKER_SSR_API_KEY</code></td><td>Yes</td><td>Your Maker API key</td></tr></tbody></table>

### How It Works

1. **Server-Side**: The component fetches pre-rendered content from the Maker SSR API
2. **Render**: HTML content, styles, and metadata are injected into your page
3. **Client Hydration**: JavaScript loads and executes, making the content interactive
4. **Interactive**: The embedded project becomes fully functional after hydration

***

### Caching and Performance

The Maker SSR API caches content by default for optimal performance. You have several options to control caching behavior:

#### Cache Busting

Use the `cacheBust` option to bypass the cache and fetch fresh content:

```
<MakerComponent
  apiKey={apiKey}
  projectId="your_project_id"
  options={{ cacheBust: true }}
/>
```

**Note:** Set `cacheBust: true` during development or when you need to ensure users see the latest version. For production, rely on caching strategies below for better performance.

#### Next.js App Router

Use Next.js revalidation for caching:

```
import { MakerComponent } from "@maker/ssr-component";

// Revalidate every 60 seconds
export const revalidate = 60;

export default async function Page() {
  const apiKey = process.env.MAKER_SSR_API_KEY!;

  return <MakerComponent apiKey={apiKey} projectId="your_project_id" />;
}
```

#### Custom Caching

Implement your own caching strategy to reduce API calls:

```
import { cache } from "react";

const getMakerContent = cache(async (projectId: string) => {
  // Your caching logic here
  // Could use Redis, memory cache, etc.
});
```

***

### Troubleshooting

#### Error: MAKER\_SSR\_API\_KEY is not set

Make sure you've set the `MAKER_SSR_API_KEY` environment variable:

```
MAKER_SSR_API_KEY=your_api_key_here
```

#### Styles Not Loading

* Verify your Content Security Policy allows external resources from Maker CDN
* Check browser console for CORS errors
* Ensure stylesheet URLs are accessible

#### Scripts Not Executing

* Check browser console for JavaScript errors
* Verify the `DOMContentLoaded` event is being fired
* Check for Content Security Policy restrictions

### Requirements

* React >= 18.0.0
* react-dom >= 18.0.0

### License

MIT

### Support

For issues, questions, or feature requests, contact the Maker team via in-app chat [ai.maker.co](https://ai.maker.co/).

Keywords **(**&#x6D;aker, ssr, react, component, server-side-rendering, nextjs)


# Custom Domain

Maker supports custom domain mapping, allowing your projects to appear on your own branded domain.

{% hint style="info" %}
Instead of using a default Maker link, your pages can live directly under your website—for example, `pages.yourbrand.com`.
{% endhint %}

### What You Can Do

* **Connect a custom domain** (e.g., `maker.yourbrand.com`)
* **Show Maker-generated pages directly** on your site—no iframe or embed code needed
* **Support full SEO benefits** since the content is hosted under your domain
* **Design microsites, event pages, or landing pages** without touching your website backend

***

### Why Use This Instead of Embedding?

* No iframes = faster load times & fewer issues
* Keeps your content under your domain for SEO
* Perfect for microsites or standalone campaigns
* **Recommended for AI visibility and consistent crawlability.**  Custom Domain is the simplest and most complete way to make a fully Maker-built page visible to AI assistants and every type of crawler. When you point a domain or subdomain at your Maker project, Maker serves the entire page as server-rendered HTML. The content is in the page from the first request -- no JavaScript required. Google, Bing, ChatGPT, Claude, and Perplexity all read it the same way they would read any other page on your site.

  Google indexes JavaScript, so Simple Embed and Enhance work fine for Google SEO. The gap is AI assistants - ChatGPT, Claude, and Perplexity do not run JavaScript, so they cannot see content injected after page load. If AI visibility matters for a page, Custom Domain is the right setup.

***

### Step-by-step

1. **Publish a Project** in Maker
2. **Go to Domain Settings** → Click “Connect Domain”
3. **Enter your custom domain** (e.g., `pages.yourbrand.com`)
4. **Verify your domain**
5. **Done!** Your Maker content now appears on your domain.

> Example:
>
> * Default: `yourbrand.maker.new/launch-page-2509`
> * Custom Domain:  [**`pages.yourbrand.com/launch-page-2509`**](http://pages.yourbrand.com/launch-page-2509)

***

### Root Domain vs. Project Path

* **Root project**: Appears directly on the homepage of your domain (`pages.yourbrand.com`)
* **Other projects**: Available under slugs like `pages.yourbrand.com/my-story`

***

***

{% embed url="<https://vimeo.com/1128775124?share=copy&fl=sv&fe=ci>" %}

***

### FAQs

<details>

<summary>Can I edit the project slug (like <code>/launch</code>)?</summary>

Slugs are auto-generated, but can be edited by clicking on the pencil icon.

<div align="left"><img src="/files/YyroNWyCO2na2eTtsQM4" alt="slug update.png" width="375"></div>

</details>

<details>

<summary>Will this affect our main website?</summary>

No. You can reserve a subdomain (like `maker.yourbrand.com`) just for Maker projects. It won’t interfere with your blog or shop.

</details>

<details>

<summary>Will SEO still work?</summary>

Yes—if you connect your own domain. Maker content hosted under your brand's domain will get full SEO visibility.

</details>

<details>

<summary>Will AI assistants like ChatGPT, Claude, and Perplexity be able to read my Maker content?</summary>

Yes, when you use Custom Domain. AI crawlers fetch a page's raw HTML and do not run JavaScript. With Custom Domain, Maker serves fully rendered HTML, so AI assistants read your content the same way they would read any standard page. On JavaScript-based embed methods (Simple Embed, Enhance), AI crawlers see an empty slot where your content would appear.

</details>

<details>

<summary>My SEO team said our Maker content is not showing up in their crawl tools. What does Custom Domain do differently?</summary>

Google renders JavaScript and indexes the content normally, so this is not a Google issue. The more likely explanation is that most third-party SEO audit tools do not render JavaScript by default; they read raw HTML only, which is why Maker content delivered via JavaScript embed shows up as missing in their reports. AI assistants like ChatGPT, Claude, and Perplexity have the same limitation. Custom Domain serves fully rendered HTML from the first request, so audit tools and AI crawlers read your content the same way Google does.

</details>

<details>

<summary>What is the difference between Custom Domain and SSR Component for SEO?</summary>

Both deliver your content as native HTML and give you full SEO and AI crawlability. The difference is scope. Custom Domain is for pages that are entirely Maker-built, Maker owns the whole page. [SSR Component](https://docs.maker.co/features/ssr-component-support) is for Maker blocks living inside pages you manage in another CMS. If you are not sure which applies to your setup, reach out via in-app chat.

</details>

<details>

<summary>Does using a subdomain (like pages.yourbrand.com) still give full SEO credit?</summary>

Yes. Content hosted on a subdomain under your brand gets full SEO visibility. Search engines associate the subdomain with your domain, and your structured data, meta tags, and page content are all indexed normally. The key is that the content is served as native HTML, which is exactly what Custom Domain does.

</details>


# Ai+ PDP Content

Create enhanced product details in minutes. Maker automatically builds fully structured enhanced content, including the visuals, copy, and layout. Use A+ templates  to keep the output consistent.

***

### K**ey Benefits**

* **Higher conversion rates:** Richer visuals and clearer explanations help shoppers feel confident and buy sooner.
* **Stronger brand trust:** Consistent storytelling, lifestyle imagery, and proof points make the product feel more premium and credible.

***

{% embed url="<https://vimeo.com/1162174959?fe=ci&fl=sv&share=copy>" %}

### **Steps**

* Select the Tools content seen under the prompt box.&#x20;
* Select Ai+ as the option
* P**aste the link to the product page** you want to enhance (PDP URL).
* **Choose a template** from the options that appear. Choose from a template you created and saved for Ai+ content or use one of the several Maker Ai+ templates.
* Answer the questions we generate from the PDP. You can also add any extra details and upload additional image assets at this stage.
* Maker will display the credits that will be used to generate the images. Click on "Allow" to proceed.
* Once the desktop AI+ content is generated, you can choose to re-generate the images again if you'd like by selecting them on the preview panel.&#x20;
* Use the prompts or visual editing to make any adjustments.
* Publish the project.

***

### Creating a new Ai+ Template&#x20;

**Step 1:** Design the layout for the enhanced content in Figma, then export it as an image.

**Step 2:** Set up your [style guide](/features/style-guide) using the Figma link, custom fonts, and any other brand assets.

*(We recommend Figma as your design tool since you can use the same file for Steps 1 and 2. If you use a different tool, create a style guide using the "Upload your brand guidelines" process instead -- this lets you upload the exported image and add additional assets like custom fonts.)*

**Step 3:** Start a new project in Maker. Add the following prompt, select the style guide you just created, and upload the exported image.

```
Role: You are an expert front-end developer working inside an AI coding environment that takes a webpage
 screenshot(s) and a JSON style guide to generate production-grade, responsive React + TypeScript code with
 Tailwind CSS.
Do not use unsplash placeholders. I will provide the assets after youve completed the plan.

IMPORTANT! Ensure the output code comply with visual editor guidelines

  1. Layout and Responsiveness
  Treat the screenshot as the source of truth for structure, spacing, and hierarchy.
  Use Tailwind responsive prefixes (sm:, md:, lg:, xl:) for mobile-first layouts. Ensure layouts look
  intentional on all breakpoints, not just stacked.
  Use percentage-based widths, Tailwind's max-w-* constraints, and responsive utilities so the layout feels
  fluid. Use Tailwind grid/flex utilities; avoid absolute positioning unless for overlapping decorative
  elements.
  Add breakpoints based on content — if the layout visually breaks at a width, add a responsive prefix there
  rather than relying only on standard breakpoints.

  2. Style Guide Integration
  All typography, colors, radii, and spacing should come from the provided design system tokens in the
  Tailwind config.
  If a required value is missing or significantly different from existing tokens, create it and add it to the
  Tailwind config's theme.extend. Match tokens by intent (e.g., a large display heading maps to the style
  guide's display size, not a raw pixel value).

  3. Data and Asset Handling
  Replace proprietary brand names, logos, external alt text, and image filenames with generic placeholders
  (e.g., "Company Name", placeholder-hero.jpg) to protect intellectual property. Use the Unsplash tool to find
   appropriate stock photos where the screenshot shows photography. Remove proprietary mentions after the
  first version.

  4. Typography and Layout Integrity
  Apply Tailwind's text-pretty class (text-wrap: pretty) to body text paragraphs and list items to prevent
  widows — this avoids single words stranded on a final line.
  Apply text-balance on h1 and h2 elements for symmetrical line lengths.
  Use responsive text sizing (e.g., text-lg md:text-2xl lg:text-4xl) so headings scale smoothly from mobile to
   desktop.
  Apply break-inside-avoid (Tailwind: break-inside-avoid) to logical "chunks" like cards, testimonial items,
  or feature blocks so they don't split across columns or page breaks.
  Do not apply text-wrap utilities to buttons, inputs, or interactive elements — leave these at their default
  wrapping behavior.
  These are progressive enhancements — they improve the experience in modern browsers and degrade gracefully
  in older ones, so use them freely.

  5. Content Editability ("Select to Edit" Compatibility)
  Expose all editable values (strings, image URLs, labels) as flat props on the top-level component. Do not
  nest data inside arrays or deep objects — the "Select to Edit" panel needs to see individual string/number
  props (e.g., heroTitle, ctaLabel, heroImageUrl).
  Add descriptive data-name attributes to all major sections and interactive elements (e.g., data-name="Hero
  Section", data-name="CTA Button") so they appear in the visual editor's element list.

  6. Componentization
  Break the screenshot into logical sections (Navbar, Hero, Features Grid, Testimonials, Footer, etc.).
  Implement each as a clean, reusable component. Prioritize clarity over clever patterns — avoid deep nesting
  that makes the component tree hard to navigate or edit.

  7. Accessibility and Semantics
  Use semantic HTML (<main>, <section>, <nav>, <footer>). Ensure accessible contrast using style guide colors.
  Interactive elements should be keyboard-focusable with visible focus states using design tokens (e.g., ring
  color from the style guide).

  8. Discipline
  Only implement what's visible in the screenshot. Do not add animations, modals, hover effects, or sections
  that aren't shown. Keep code lean and production-ready.
```

**Step 4:** Once the project is created, use the prompts and visual editor to refine the design.

**Step 5:** Once the design is locked, select the left dropdown and add the project to both the AI+ Content and Templates collections.

### CMS Implementation

These are the recommended steps for adding the Maker AI+ content to your product pages. The embed code should be pasted into your product record as-is and output directly in your product template. Please verify these steps in your own CMS.

***

### Shopify

**Step 1: Get the embed code for your product**

From your Maker dashboard, open the project for the product you want to implement and copy the embed code.

**Step 2: Add a metafield to the product in Shopify**

Metafields allow you to attach custom data to individual products in Shopify, which is exactly what we need here since every product has different content.

In your Shopify admin, go to **Settings > Custom Data > Products:**

1. Click Add definition
2. Name it something like Ai Product and set the namespace to&#x20;
3. Name it something like Ai Product, set the namespace to maker, and the key to ai\_product
4. Set the type to Multi-line text
5. Save the definition

Now go to the individual product:

6. Go to **Products** and open the product that matches your Maker project
7. Scroll down to the Metafields section at the bottom of the product page
8. Find the maker.ai\_product field you just created
9. Paste the embed code into that field
10. Save the product

Repeat this for each product you want to add Ai+ content to.

**Step 3: Add the metafield output to your product template**

This step only needs to be done once. Your developer will add a single line to your product template that outputs whatever embed code is stored in that product’s metafield.\
1\. In Shopify admin, go to Online Store > Themes > Actions > Edit Code\
2\. Open your product template (usually `sections/main-product.liquid` or `templates/product.liquid`)\
3\. Add the following snippet anywhere in the file, ideally near the top or bottom of the main content section:

```
{% if product.metafields.maker.ai_product != blank %}
  {{ product.metafields.maker.ai_product.value }}
{% endif %}
```

4\. Save the file\
From this point on, whenever a product has a embed code stored in its `maker.ai_product` metafield, it will automatically output in the page HTML for that product. Products without a metafield value will simply output nothing.<br>

**Step 4: Verify**

Go to your live product page and see if the Ai+ content loads correctly.&#x20;

***

### BigCommerce

BigCommerce’s Stencil framework also renders server-side. The approach here uses custom product fields.<br>

**Step 1: Enable custom fields on your product**

1\. In your BigCommerce admin, go to Products and open the product that matches your Maker project\
2\. Scroll to the Custom Fields section\
3\. Add a new custom field:\
Name: `maker_ai_product`\
Value: paste the embed code from Maker AI\
4\. Save the product\
Repeat for each product.<br>

**Step 2: Output the custom field in your product template**

1\. In your BigCommerce admin, go to Storefront > My Themes > Advanced > Edit Theme Files\
2\. Open `templates/pages/product.html`\
3\. Add the following snippet:

```
{{#each product.custom_fields}}
  {{#if (equals name "maker_ai_product")}}
    {{{value}}}
  {{/if}}
{{/each}}
```

**Step 4: Save and push your theme** **and** **verify**

Go to your live product page and see if the Ai+ content loads correctly. <br>

***

### **Magento (Adobe Commerce)**

In Magento, the equivalent of metafields is product attributes.<br>

**Step 1: Create a product attribute**\
1\. In your Magento admin, go to Stores > Attributes > Product\
2\. Click Add New Attribute\
3\. Set the attribute code to `maker_ai_product`\
4\. Set the input type to Textarea\
5\. Under Storefront Properties, set Visible on Catalog Pages on Storefront to No (this is backend-only data)\
6\. Save the attribute and assign it to the relevant attribute set<br>

**Step 2: Add the embed code to each product**

1\. Go to Catalog > Products and open the product that matches your Maker project\
2\. Find the `maker_ai_product` attribute field\
3\. Paste the embed code content from Maker AI\
4\. Save the product\
Repeat for each product.\
Step 3: Output the attribute in your product template\
In your product detail page template (`app/design/frontend/[Vendor]/[Theme]/Magento_Catalog/templates/product/view.phtml`), add:

```
<?php if ($product->getMakerAiProduct()): ?>
  <?= $product->getMakerAiProduct() ?>
<?php endif; ?>
```

Clear cache after saving:

```
php bin/magento cache:clean
```

***

### **Custom or Headless CMS**

If you're on a custom-built platform or a headless setup, the concept is the same: store the embed code against the product record in your database or CMS, then output it server-side in the product page template.

**For Next.js or React-based storefronts**

Store the embed code in your product data (CMS, database, or API) and inject it in the body of the page using dangerouslySetInnerHTML:

```
export default function ProductPage({ product }) {
  return (
    <>
      {/* rest of your page */}
      {product.makerAiProduct && (
        <div
          dangerouslySetInnerHTML={{ __html: product.makerAiProduct }}
        />
      )}
    </>
  );
}
```

For any server-rendered platform (PHP, Python, Ruby, etc.)\
Store the embed code in your product database field and output it in the template:

```
<?php if (!empty($product['maker_ai_product'])): ?>
  <?= $product['maker_ai_product'] ?>
<?php endif; ?>
```

***

### Summary&#x20;

| Platform           | Where em is stored   | Template change needed |
| ------------------ | -------------------- | ---------------------- |
| Shopify            | Product metafield    | Yes, one-time          |
| BigCommerce        | Product custom field | Yes, one-time          |
| Magento            | Product attribute    | Yes, one-time          |
| Next.js / Headless | Product data / CMS   | Yes, one-time          |

The template change is always a one-time setup. Once it’s done, you only need to add or update the embed code in the product record from now on.

<br>


# Compare Versions

Version comparison shows two versions of your project side by side so you can quickly spot changes, review Maker updates, track progress, or decide whether to revert.

<figure><img src="/files/S4whedn0jUaZa6sKs1iH" alt=""><figcaption></figcaption></figure>

***

### K**ey Benefits**

* Spot exactly what changed between two versions in seconds.
* Quickly decide whether to keep the update or revert it with confidence.

***

### **Steps**

* Open your project.
* Click the project title dropdown at the top left of the editor.
* Select **Compare versions**.

To exit the comparison view, click **Back to preview**.

***

### How it works

The comparison view splits your screen into two panels:

* **Before**: the earlier version
* **After**: the later version

Each panel shows a live preview of the selected version.

#### Choose which versions to compare

Each panel includes a version picker dropdown that shows:

* Version name (for example, “Version 1” or “Current version”)
* Who created it
* When it was created

You can change either side independently to compare any two versions, like Version 1 vs Version 5.

***

### Tips

* If Maker suggests reviewing changes, you may see clickable comparison buttons in chat. Clicking one opens a version comparison with the relevant versions pre-selected.
* Version comparison is available only when your project has **2 or more** versions.

***

### FAQ

<details>

<summary><strong>Can I edit in comparison view?</strong></summary>

No. Version comparison is read-only. Click **Back to preview** to return to the editor and make changes.

</details>

<details>

<summary><strong>What counts as a version?</strong></summary>

Each prompt you send to Maker creates a new version. The version captures the state of your project files at that moment so that you can compare or return to it later.

</details>

<br>


# Collections

Collections let you group related projects together so they're easier to find and manage. Create your own custom collections or let Maker handle it automatically based on your project types.

<figure><img src="/files/2qM8FPM18uuQo0he0mzp" alt=""><figcaption></figcaption></figure>

***

### K**ey Benefits**

* Organize projects into named groups so you can find them quickly.
* Automatic collections group your projects by type with no setup needed.
* Add or remove projects from collections directly from the editor.

***

### How to Create a Collection

1. Go to the **Projects** page.
2. Click the **Collections** tab.
3. Click **Create new collection**.
4. Give your collection a name (for example, "Homepage variants") and click **Next**.
5. Select the projects you want to include and click **Create**.

To manage an existing collection, just click its card to open it and make the changes.&#x20;

***

### How it works

The Collections tab shows a grid of cards, each with a 2x2 thumbnail preview, the collection name, and a project count.

**Custom collections** are ones you build yourself. Name it, pick your projects, and it shows up in your grid. A project can belong to more than one collection, so there's no need to choose.

**Automatic collections** are created by Maker based on your project types. These show up alongside your custom collections and require zero setup:

* **AI+ content** — projects created with AI+ enhanced content mode
* **Makeovers** — projects created with the makeover tool
* **Image gen** — projects created with image generation
* **Video gen** — projects created with video generation
* **Figma imports** — projects imported from Figma

They appear once you have at least one project of that type and update on their own.

***

#### Managing a Collection

From a collection's detail view, you can:

* **Rename it** — click the pencil icon next to the collection name.
* **Edit projects** — click the edit button to add or remove projects.
* **Start a new project** — click "Create project" and it's automatically added to that collection.
* **Delete it** — click the delete button. Your projects are not affected.

**Adding a project from the editor:** Click the project title in the top-left of the editor. The dropdown includes a Collections submenu where you can toggle which collections the project belongs to.

***

### Tips

* Custom and automatic collections are sorted alphabetically together in the grid.
* Use the search bar to filter collections by name (3-character minimum).
* The Likes tab is now part of the main Project page — it's the third tab, right alongside Projects and Collections.
* When you create a project from inside a collection, it's added to that collection automatically.

***

### FAQ

<details>

<summary><strong>Can a project be in more than one collection?</strong></summary>

Yes. A project can belong to as many collections as you want. You can add it from the editor's project title dropdown or by editing the collection directly.

</details>

<details>

<summary><strong>Does deleting a collection delete the projects inside it?</strong></summary>

No. Deleting a collection only removes the grouping. All projects that were inside it stay in your projects list untouched.

</details>

<details>

<summary><strong>What are automatic collections?</strong></summary>

Automatic collections are created by Maker based on your project types. For example, if you have projects imported from Figma, a "Figma imports" collection appears automatically. You don't need to create or manage them since they update on their own.

</details>

<details>

<summary><strong>Can I edit or delete automatic collections?</strong></summary>

No. Automatic collections are managed by Maker and reflect your actual projects. If you want a custom grouping, you can always create your own collection.

</details>

<details>

<summary><strong>Where did the Likes page go?</strong></summary>

Likes are now the third tab on the Products page, right alongside Projects and Collections. All your liked projects are still there.

</details>

<br>


# FAQs for AEO

Maker helps you publish FAQs that help shoppers on your site and make your product pages AEO-ready for Al.

<figure><img src="/files/p8DEAvdU6jRNwsNrdw4a" alt=""><figcaption></figcaption></figure>

***

### Why FAQs Work for AEO

* AI engines look for a clear question paired with a clear answer — FAQs are built exactly that way, making them easy to read, cite, and surface in responses
* Shoppers get answers to common questions right at the point of decision, reducing friction and supporting conversion
* Structured FAQ content with proper schema tells AI engines not just what the answer is, but that it can be trusted and referenced confidently
* Every FAQ is a potential citation opportunity — when someone asks an AI what to buy or how something works, your product page becomes a candidate for the answer
* With Maker, you don't have to write them from scratch — we generate the questions and answers from your product URL, so your team just reviews and approves

***

### **How to Create FAQs with Maker**&#x20;

1. Open the Maker editor
2. Create an FAQ using a simple prompt like: "Generate FAQs for this PDP" and paste your product link. You can also include additional details such as number of questions, a "See all" toggle, search option, or accordion format
3. Once the FAQs are ready, run the prompt: **"Generate FAQ schema"**
4. Maker will check the project for existing FAQs first — if none are found, it will generate new ones for the JSON-LD schema

***

### **Where to find your FAQ schema**

Once generated, you can access it in three places:

1. **Download the JSON-LD Schema file: I**nside the Download button on any project, you’ll find a JSON-LD Schema download alongside the Project ZIP. This gives you a standalone `.json` file for that product’s FAQs.
2. **Schema URL from the Publish Modal:** When you publish a project, the Publish Modal includes an “Open JSON-LD Schema URL” link. This is a hosted URL that always serves the latest schema for that product. You can open it in a browser to view the raw schema, or use the URL directly in certain implementations.
3. **Copy with Simple Embed:** When you copy the Simple or iframe Embed code, the JSON-LD schema is automatically included alongside the embed script. This is the quickest option if you’re adding both the visual component and the schema to a page at the same time.

**Important: One schema per product**\
*Each product FAQ should have its own unique schema. You’ll need to add the correct schema to the matching product page on your store. There is no single schema file that works across all products. The steps below are repeated for each product you want to make AEO-ready.*

***

### CMS Implementation

*(These are the recommended steps. Please verify this in your own CMS.)*

***

### Shopify

Shopify’s Liquid templates render server-side, which is exactly what you need for the schema to be readable by AI crawlers. The recommended approach is to store each product’s schema in a metafield and reference it dynamically in your product template.<br>

**Step 1: Get the schema for your product**

From your Maker dashboard, open the project for the product you want to implement. Either download the JSON-LD Schema file or copy the schema content from the Schema URL.<br>

**Step 2: Add a metafield to the product in Shopify**

Metafields allow you to attach custom data to individual products in Shopify, which is exactly what we need here since every product has a different schema.

1\. In your Shopify admin, go to Settings > Custom Data > Products\
2\. Click Add definition\
3\. Name it something like `FAQ Schema` and set the namespace to `maker` and the key to `faq_schema`\
4\. Set the type to Multi-line text\
5\. Save the definition

Now go to the individual product:\
1\. Go to Products and open the product that matches your Maker project\
2\. Scroll down to the Metafields section at the bottom of the product page\
3\. Find the `maker.faq_schema` field you just created\
4\. Paste the full JSON-LD schema content into that field\
5\. Save the product

Repeat this for each product you want to add schema to.<br>

**Step 3: Add the metafield output to your product template**

This step only needs to be done once. Your developer will add a single line to your product template that outputs whatever schema is stored in that product’s metafield.\
1\. In Shopify admin, go to Online Store > Themes > Actions > Edit Code\
2\. Open your product template (usually `sections/main-product.liquid` or `templates/product.liquid`)\
3\. Add the following snippet anywhere in the file, ideally near the top or bottom of the main content section:

```
{% if product.metafields.maker.faq_schema != blank %}
  <script type="application/ld+json">
    {{ product.metafields.maker.faq_schema | raw }}
  </script>
{% endif %}
```

4\. Save the file\
From this point on, whenever a product has a schema stored in its `maker.faq_schema` metafield, it will automatically output in the page HTML for that product. Products without a metafield value will simply output nothing.<br>

**Step 4: Verify**

Go to your live product page, right-click, and select View Page Source. Search for `FAQPage`. If it appears in the raw HTML, the schema is live. You can also test it at <https://search.google.com/test/rich-results>.

***

### BigCommerce

BigCommerce’s Stencil framework also renders server-side. The approach here uses custom product fields.<br>

**Step 1: Enable custom fields on your product**

1\. In your BigCommerce admin, go to Products and open the product that matches your Maker project\
2\. Scroll to the Custom Fields section\
3\. Add a new custom field:\
Name: `maker_faq_schema`\
Value: paste the full JSON-LD schema content from Maker AI\
4\. Save the product\
Repeat for each product.<br>

**Step 2: Output the custom field in your product template**

1\. In your BigCommerce admin, go to Storefront > My Themes > Advanced > Edit Theme Files\
2\. Open `templates/pages/product.html`\
3\. Add the following snippet:

```
{{#each product.custom_fields}}
  {{#if (equals name "maker_faq_schema")}}
    <script type="application/ld+json">
      {{{value}}}
    </script>
  {{/if}}
{{/each}}
```

**Step 4: Save and push your theme** **and** **verify**

Go to your live product page, right-click, and select View Page Source. Search for `FAQPage`. If it appears in the raw HTML, the schema is live. You can also test it at <https://search.google.com/test/rich-results>.\
Verify\
Same as Shopify: View Page Source on a live product page and search for `FAQPage`.<br>

***

### **Magento (Adobe Commerce)**

In Magento, the equivalent of metafields is product attributes.<br>

**Step 1: Create a product attribute**\
1\. In your Magento admin, go to Stores > Attributes > Product\
2\. Click Add New Attribute\
3\. Set the attribute code to `maker_faq_schema`\
4\. Set the input type to Textarea\
5\. Under Storefront Properties, set Visible on Catalog Pages on Storefront to No (this is backend-only data)\
6\. Save the attribute and assign it to the relevant attribute set<br>

**Step 2: Add the schema to each product**

1\. Go to Catalog > Products and open the product that matches your Maker project\
2\. Find the `maker_faq_schema` attribute field\
3\. Paste the JSON-LD schema content from Maker AI\
4\. Save the product\
Repeat for each product.\
Step 3: Output the attribute in your product template\
In your product detail page template (`app/design/frontend/[Vendor]/[Theme]/Magento_Catalog/templates/product/view.phtml`), add:

```
<?php if ($product->getMakerFaqSchema()): ?>
<script type="application/ld+json">
  <?= $block->escapeHtml($product->getMakerFaqSchema()) ?>
</script>
<?php endif; ?>
```

Clear cache after saving:

```
php bin/magento cache:clean
```

### **Custom or Headless CMS**

If you’re on a custom-built platform or a headless setup, the concept is the same: store the schema against the product record in your database or CMS, then output it server-side in the product page template.\
For Next.js or React-based storefronts\
Store the schema in your product data (CMS, database, or API) and inject it using `next/head` at the page level, not inside a `useEffect`. This ensures it renders server-side:

```
import Head from 'next/head';

export default function ProductPage({ product }) {
  return (
    <>
      <Head>
        {product.makerFaqSchema && (
          <script
            type="application/ld+json"
            dangerouslySetInnerHTML={{ __html: product.makerFaqSchema }}
          />
        )}
      </Head>
      {/* rest of your page */}
    </>
  );
}
```

For any server-rendered platform (PHP, Python, Ruby, etc.)\
Store the schema in your product database field and output it in the template:

```
<?php if (!empty($product['maker_faq_schema'])): ?>
<script type="application/ld+json">
  <?= htmlspecialchars($product['maker_faq_schema'], ENT_NOQUOTES) ?>
</script>
<?php endif; ?>
```

***

### Schema URL instead of the downloaded file

If you prefer not to copy and paste schema content manually, Maker AI also provides a Schema URL for each project (available in the Publish Modal). This URL always serves the latest version of that product’s schema.<br>

**Note:** Shopify Liquid and most CMS templating languages cannot make external HTTP requests at render time. The Schema URL is most useful for developers building custom integrations, or for referencing and viewing the schema content without downloading the file. For Shopify, BigCommerce, and Magento, the recommended approach is to copy and paste the content into a metafield or custom attribute.

***

### Summary&#x20;

| Platform           | Where schema is stored | Template change needed |
| ------------------ | ---------------------- | ---------------------- |
| Shopify            | Product metafield      | Yes, one-time          |
| BigCommerce        | Product custom field   | Yes, one-time          |
| Magento            | Product attribute      | Yes, one-time          |
| Next.js / Headless | Product data / CMS     | Yes, one-time          |

The template change is always a one-time setup. Once it’s done, you only need to add or update the schema in the product record from now on.

***

### FAQs

<details>

<summary> <strong>What does "AI-ready" mean for a product page?</strong></summary>

It means your product detail page (PDP) has structured, machine-readable content that AI tools and search engines can interpret correctly. This includes things like schema markup, FAQs, and product data that's formatted in a way AI can actually use, not just read.

</details>

<details>

<summary><strong>What tool do I use to test this?</strong></summary>

Google's Rich Results Test is a free diagnostic tool that tells you whether your page's structured data is set up correctly enough to qualify for enhanced search features. Just go to [search.google.com/test/rich-results](https://search.google.com/test/rich-results), paste in your product page URL, and run the test. It will show you exactly what structured data Google can detect on that page.

It shows which rich result types were found on the page, as well as any errors or suggestions for your structured data. You'll see two types of flags: errors (critical, meaning the item won't qualify for rich results until fixed) and warnings (non-critical, meaning it can still show but might be incomplete). It's specifically Google-focused. You want to see valid items detected across those key categories, all green checkmarks. If you see orange "non-critical issues detected" flags, those are worth flagging to your dev or implementation team even if they don't break anything.For generic schema validation, you'd use the [Schema Markup Validator ](https://validator.schema.org/)to test all types of schema.org markup without Google-specific validation. So it won't catch every possible structured data issue, just the ones that matter for Google's rich results.&#x20;

<figure><img src="/files/QSWBf0BBXmA9DTA8B7qh" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary><strong>How does Rich Test Result connect to AEO?</strong></summary>

Rich results and AEO go hand in hand. If your structured data passes this test, it means Google and the AI tools that pull from Google's index can read and interpret your content correctly. A page without FAQ schema, for example, won't show up as a direct answer in AI-generated results the way a properly marked-up page will.

</details>

<details>

<summary><strong>I ran a test, but what if I don't see an FAQ in the results?</strong></summary>

That means your page either doesn't have an FAQ section or the one you have isn't marked up with proper schema. This is one of the quickest wins for AEO because FAQ schema helps AI tools surface your content as a direct answer, not just a link.

</details>

<details>

<summary><strong>Can Maker help with this?</strong></summary>

Yes. With Maker, all we need is a product URL. We'll generate the right questions, draft on-brand answers, and deliver FAQs that are built in a structured, machine-readable way, so they're AEO ready right out of the box. Your team just reviews and approves.

</details>


# Variants and Create Experiences

Variants let you create multiple versions of a project and control which one your users see based on rules you define. Available on our Max and Enterprise plans.

*<mark style="color:$info;">This feature is available only on Max and Enterprise plans</mark>*

<figure><img src="/files/DbNdMAGT9bmk4Q05Qaju" alt=""><figcaption></figcaption></figure>

***

### **What's included:**

* Unlimited Variants: create as many versions of any page as you need
* AI-Powered Generation: Let AI create completely different variants from a single prompt
* Visual Editor: manually tweak any element, any section, any variant
* Personalization: serve different variants to different audiences and segments
* Geo-Targeting: detect location automatically and serve a completely different experience\*
* Generate a unique page title and meta description for each variant\*
* Campaign Variants: create dedicated versions for each campaign, each list
* A/B Testing: test variants directly inside your project
* Performance Tracking: see what wins and iterate fast

\*If your project runs via embed.js or downloaded code rather than Maker-hosted (like custom domain mapping), page title and meta description changes, and geo-targeting variables will not work. These features require Maker to control the full page.

***

### How to Set Up Variants

**Step 1: Add Variants to Your Project**

Open your project and click on the drop-down menu in the top left corner. Click the **Create Variants** button to get started. This will create an option to create variants above the preview tab you'll use to manage all your variants.

**Step 2: Create a New Variant**

Use the dropdown that appears to add a **New Variant**. You can create as many variants as you need.

<div><figure><img src="/files/nfYVOs480kDpE7qXRTti" alt=""><figcaption></figcaption></figure> <figure><img src="/files/bezUNX7SNORVqhxRLAaS" alt=""><figcaption></figcaption></figure></div>

**Step 3: Update Elements in a Variant**

Choose the variant you want to edit from the dropdown. In the prompt box, use the element select tool to pick the element you want to change in that variant. Then enter a prompt describing the change, for example: Change text to "100% Cotton Shirts"

The update affects only the selected variant. To verify it, switch back to Default in the dropdown and compare the two versions.

<figure><img src="/files/OfY0E759JD7CI0bc4t1G" alt=""><figcaption></figcaption></figure>

**Step 4: Deploy Variants with Rules**

Once your variants are ready, head to the Variants dropdown and select **View Details**. You'll find two tabs:

**Tab 1: Variants Overview**&#x20;

Review all your variants along with their variable names and values. From here, you can bulk update, add or remove variants, and edit variable values all in one place. There is an option to update variants in bulk by uploading a CSV file.

**Tab 2: Advanced**&#x20;

Set the overrides that determine when each variant should render. You can also bulk upload a CSV file with the variants and their overrides. If you click **Bulk update (upload)**, you can download a template as an Excel file with the current variants already filled in. After adding more details to the file, re-upload it to create new variants or update existing ones.

<div><figure><img src="/files/9rXNaq4q4XIyvaiVZmX2" alt=""><figcaption></figcaption></figure> <figure><img src="/files/xtGA1CtuUDWXQZzrhd3r" alt=""><figcaption></figcaption></figure> <figure><img src="/files/jvnpYwy0movEcl6Hgj11" alt=""><figcaption></figcaption></figure></div>

**Step 5: Create Experiences**

Use the **Experience** panel to control when variants are shown. Create Experience is where you set up how your variants are served to visitors. When you open it, you'll be asked to choose between two strategies:

* **A/B Experiment**: randomly splits traffic across variants to measure which performs best
* **Personalization**: routes visitors to a specific variant when they match conditions you define, like a URL query parameter equaling a certain value. Please note that certain rules cannot be used with server-side variables (Custom JS, City, Country, JS variable, etc) and require these projects to be Maker-hosted and do not work with embed.js or downloaded code.

You can update the strategy at any time, but note that switching will overwrite the existing one.

**Note:** Before you set up the experiences, connect[ Google Analytics and select a GA4 property](https://ai.maker.co/settings/connectors) in Settings → Connectors to enable experiences.&#x20;

In **Personalization,** The **Original** option is the default variant and is served when no rules match. In the **Schedule**, you can optionally set a start and end time for when the experience is active. Under **Variant Rules**, define the conditions that determine which variant is served, such as matching a query parameter. You can combine conditions using **All** to require every rule to match. Variants without any conditions will not be served.

<div><figure><img src="/files/efRZYgM0564J2MDfn8E4" alt=""><figcaption></figcaption></figure> <figure><img src="/files/BkmzvgBKhaxFglGAZdrz" alt=""><figcaption></figcaption></figure></div>

<div><figure><img src="/files/i28sl5S4wT8Cs1KnUbxA" alt=""><figcaption></figcaption></figure> <figure><img src="/files/neWiXfGzAiSAmz3nqpGy" alt=""><figcaption></figcaption></figure></div>

**Step 6: Publish**

Make sure to publish the page. Rules and variants will not go live until the page is published.

{% embed url="<https://vimeo.com/1169582882?fe=ci&fl=sv&share=copy>" %}

***

### FAQs

<details>

<summary>What is "Default" and can I delete it?</summary>

Default is just the name for your base project. It's always there and can't be removed. If you delete all other variants, the variant dropdown will be hidden automatically since there's nothing to switch between.

</details>

<details>

<summary>What's the difference between variants and overrides?</summary>

Variants are full versions of your page. Overrides let you swap specific elements, like a headline or image, based on a condition, without building out a whole new version. You can also use both together: a variant handles the full page version, and an override applies additional changes on top of it when the same condition is met.

</details>

<details>

<summary>When should I use overrides instead of variants?</summary>

Overrides are a good fit when you want to change just one or two elements based on a URL parameter or other condition. If you need a significantly different page experience, go with a variant.

</details>

<details>

<summary>Can I change images using overrides?</summary>

Yes. Pick a new image from your artifacts, or generate a new image directly from the override panel.

</details>

<details>

<summary>How do I make a change across all variants at once?</summary>

Always switch to Default before prompting Maker with changes you want applied everywhere. Only switch into a specific variant when the change should apply to that version only. This keeps Maker from getting confused by the variant context.

</details>

<details>

<summary>Can I generate a unique page title and meta description for each variant?</summary>

Yes. Inside the variant you want to update, prompt Maker with something like "Add a page title and meta description" and it will generate relevant content based on what's on the page. You can also ask it to do this for all variants at once from the Default view. Note that this only works on Maker-hosted projects (including custom domain mapping) and is not supported for projects using embed.js or downloaded code.

</details>

<details>

<summary>How do geo-targeting and location variables work?</summary>

You can add city or country as a dynamic variable in your content by including it in your prompt, for example: "Add in `<City>` after the headline." Maker detects location automatically. Make sure to include a note in your prompt to hide "in" if no city is available, so the word doesn't appear on its own. This feature requires Maker-hosted and does not work with embed.js or downloaded code.

</details>

<details>

<summary>Are query parameter values case-sensitive?</summary>

Yes. Make sure the value in your condition matches exactly what's in the URL, including capitalization.

</details>

<details>

<summary>What's the best way to use the bulk update template?</summary>

Download the template from the Variants panel and open it in Google Sheets so the dropdown options display correctly. The template has two sheets: one for Variants and one for Overrides.&#x20;

</details>

<details>

<summary>Can I group multiple overrides under the same condition?</summary>

Yes, and it's a good idea to do so. If you're changing both a text element and an image when the same condition is met, give them the same override name. This keeps your overrides organized as a logical group rather than creating separate, disconnected ones.

</details>

<details>

<summary>Do variants and the Create Experience work if I'm using embed.js or downloaded code?</summary>

Yes, variants and the Rule Engine work regardless of how your project is deployed. The only features that require Maker-hosted are page title and meta description changes and geo-targeting variables.

</details>

<details>

<summary>What is the Advanced tab used for?</summary>

The Advanced tab is where you create overrides. Use it when you want to swap out specific elements on a page, like a headline or image, based on a condition. It does not change the entire page, just the elements you specify.

</details>

<details>

<summary>What is Create Experience used for?</summary>

Create Experience is where you set up how your variants are served to visitors. When you open it, you'll be asked to choose between two strategies:

* **A/B Experiment**: randomly splits traffic across variants to measure which performs best
* **Personalization**: routes visitors to a specific variant when they match conditions you define, like a URL query parameter equaling a certain value

You can update the strategy at any time, but note that switching will overwrite the existing one.

</details>

<details>

<summary>What is the difference between A/B Experiment and Personalization?</summary>

A/B Experiment is for testing. Traffic is split randomly across variants so you can see which one performs better. Personalization is for targeting. You define specific conditions, like a query parameter or other rules, and visitors who match those conditions are served the corresponding variant.

</details>

<details>

<summary>When should I use Personalization vs. A/B Experiment?</summary>

Use Personalization when you know which audience should see which variant. For example, visitors coming from a specific campaign URL should see a specific version of the page. Use A/B Experiment when you want to test two or more versions and let the data tell you which one wins.

</details>

<details>

<summary>Do I need both- the Advanced tab and Create Experiences, or can I just use one?</summary>

You can use either one on its own. Overrides alone work fine if you only need to change a few elements. Page rules alone work if you want to activate full variants. That said, they work well together. A page rule can activate a variant, and an override can apply additional changes on top of that same variant when the same condition is met.

</details>

<details>

<summary>When should I use Advanced instead of Create Experience?</summary>

Use Advanced when the change is element-level, swapping out text, an image, or a variable, based on a condition. Use Create Experience when the change is page-level, meaning a condition should load an entirely different version of the page.

</details>

<details>

<summary>Can I activate a variant using overrides instead of page rules?</summary>

Yes, you can handle everything through overrides without setting up any page rules. However, if you have already built out full variants, using Create Experience to activate them with page rules is generally the cleaner and more organized approach.

</details>

<details>

<summary>Can I ask Maker to set up my experiences?</summary>

Yes! You can ask the Maker to create variants, configure traffic splits, and set up routing rules directly in the chat.&#x20;

</details>

<details>

<summary>Can I ask Maker to set up my experiences?</summary>

Yes! You can ask the Maker to create variants, configure traffic splits, and set up routing rules directly in the chat.&#x20;

</details>

<details>

<summary>Can I use different Google Analytics IDs for different projects?</summary>

Yes. You can assign a separate GA4 measurement ID to each project instead of using one org-wide setting. Go to **Settings > Connectors** to choose which GA IDs to expose, then select the one you want in the **Experiments** or **Personalization** dropdown within your project.

<figure><img src="/files/kUoxERyOYF2bIwUKZBpc" alt=""><figcaption></figcaption></figure>

</details>

<details>

<summary>Can I run a live A/B experiment and edit it at the same time?</summary>

No. You'll need to stop the experiment first, make your changes, and then restart it.

</details>


# Variants with Dynamic Content

Dynamic content lets you swap specific values on your Maker project for targeted visitors, based on conditions you define, without building a full variant.

*<mark style="color:$info;">This feature is available only on Max and Enterprise plans</mark>*

<figure><img src="/files/PbNJMisJhTHUrdfmaDLp" alt=""><figcaption></figcaption></figure>

***

### Key Benefits

* Tweak a value for a specific audience (a headline, a CTA, a hero image) without creating a whole new variant.
* Target by device, browser, URL, query params, cookies, country, city, hour of day, and more.
* Stack multiple rules: each piece of dynamic content applies on top of whichever variant the visitor sees.
* Preview exactly what each audience gets, live in the editor, before anything reaches real visitors.

***

### Steps

1. Open a project and click the variant dropdown in the toolbar.
2. Choose **Add dynamic content**. The Dynamic content panel slides in on the left.
3. Click **Add dynamic content** and give it a name (or pick one of the suggested names, like "Paid campaign welcome" or "Geo-specific pricing").
4. Click **Add condition** and define who this applies to. For example, *Query param* `utm_source` *equals* `google`.
5. Under **Changes**, pick a variable (one of your project's dynamic values), and type what it should become for visitors matching the condition.
6. Click **Save**.

That's it. Visitors who match the condition now see the changed value on your published site. Everyone else sees the normal variant content.

<figure><img src="/files/eTWMDeRmQeZC1FmVecTq" alt=""><figcaption></figcaption></figure>

***

### How It Works

Dynamic content lives in a panel that slides in from the left of the editor. It has two tabs: **Edit** and **Preview**.

Every project built with variants exposes a set of dynamic values: the texts, links, and images Maker has wired up to be swappable. A variant gives each of those values a complete alternative set. Dynamic content is lighter: it changes just the values you pick, for just the visitors you describe, layered on top of whichever variant is active.

#### Conditions

Each piece of dynamic content holds one or more numbered conditions. A condition is a single rule about the visitor or the page:

* **Device:** desktop, mobile, or tablet.
* **Browser:** Chrome, Firefox, Safari, etc.
* **Path / Host:** where on your site the visitor is.
* **Query param / Hash param:** URL parameters, like `utm_source` or `ref`.
* **Cookie / JS variable:** values set by your site or other tools.
* **Hour of day:** the current hour on the visitor's device (0-23).
* **Country / City:** the visitor's location.

Pick an operator (*equals*, *is one of* for a comma-separated list, *includes*) and a value to match against.

#### Changes

Each condition carries its own list of changes. A change picks one of your project's variables and says what it *becomes* when the condition matches; the variable's current default is shown right in the picker so you know what you're replacing. For image variables, you can **Generate** a new image with AI or **Upload** one from your files instead of pasting a URL.

#### Ordering

The Edit tab lists all your dynamic content with numbered rows and reorder arrows. Entries are applied in order, from top to bottom. If two entries change the same variable and a visitor matches both, the one lower in the list wins. Use the arrows to control priority, the pencil to edit, and the trash icon to delete (with a confirmation, since deleting can't be undone).

***

### Previewing Dynamic Content

Dynamic content matches against a visitor's *real* context, so an "hour of day" rule, for example, would fire based on the clock while you're editing. To keep your editing experience predictable, **dynamic content is not applied in the editor preview by default**. Your published site is unaffected; real visitors always get it.

To see it in action, switch to the **Preview** tab:

1. Each piece of dynamic content is listed with a **Select value** dropdown.
2. The dropdown shows the audience segments built from its conditions, for example, *Query param utm\_source equals google*.
3. Select one or more segments. The live preview reloads instantly with those changes applied, stacked in the same priority order as the Edit tab.
4. Selected segments appear as removable chips under each dropdown, with a running "N selected" count at the top.
5. Click **Reset** to clear all selections and return the preview to the plain variant.

You can select segments from several entries at once to see how combinations interact, exactly what a visitor matching all of them would see.

<figure><img src="/files/QygpkFx3v6PT58wYgdKB" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/WMPizfDyOBdncdxnNHVC" alt=""><figcaption></figcaption></figure>

***

### Tips

* Dynamic content needs a name before you can save. Use the suggested name chips for inspiration on common use cases (paid campaign welcomes, returning visitor greetings, geo-specific pricing, and more).
* Use the *is one of* operator with a comma-separated list to match several values in one condition, e.g. `utm_source` is one of `google, bing, duckduckgo`.
* A single entry can hold several conditions, each with its own changes, handy for grouping all the rules behind one campaign under one name.
* Values that look like numbers or `true`/`false` are stored as numbers and booleans, so they slot cleanly into variables of those types.
* Closing the panel automatically resets any Preview tab selections, so you're never left looking at a stale preview.
* If you find yourself overriding most of a page, that's a sign you want a full variant instead; dynamic content is for surgical tweaks.

***

### FAQs

<details>

<summary>How is dynamic content different from a variant?</summary>

A variant is a complete alternative version of your project's dynamic values. Dynamic content changes just a few values, for just the visitors who match your conditions, on top of whichever variant they're seeing. Use variants for big-picture alternatives (A/B tests, distinct audiences) and dynamic content for targeted tweaks (a different headline for paid traffic, a local phone number per country).

</details>

<details>

<summary>Why don't I see my dynamic content in the editor preview?</summary>

By design. Conditions match against real visitor context: your actual device, the current hour, your location. Applying them in the editor would make the preview unpredictable while you're inspecting a variant. Use the **Preview** tab in the Dynamic content panel to apply specific segments to the live preview on demand. Published sites always apply dynamic content for real visitors.

</details>

<details>

<summary>What happens when a visitor matches more than one entry?</summary>

All matching entries apply, in the order they appear in the Edit tab (top to bottom). If two entries change the same variable, the one lower in the list takes effect. Reorder entries with the arrows to control which wins.

</details>

<details>

<summary>What can I target with conditions?</summary>

Device type, browser, URL path and host, query and hash parameters, cookies, JavaScript variables, the hour of day on the visitor's device, and the visitor's country or city. Each condition combines one of these fields with an operator (*equals*, *is one of*, *includes*) and a value.

</details>

<details>

<summary>What values can I change?</summary>

Any of your project's dynamic variables: the texts, links, and images Maker has made swappable in your project. The picker shows each variable's current default so you know what you're replacing. Image variables additionally offer AI generation and file upload.

</details>

<details>

<summary>Does dynamic content work with A/B tests and page rules?</summary>

Yes. Dynamic content is resolved after your variant strategy. Whether the visitor's variant comes from an A/B experiment bucket or a page rule, matching dynamic content is layered on top of that variant's values.

</details>

<details>

<summary>Can I undo a delete?</summary>

No. Deleting a dynamic content entry is permanent, which is why Maker asks you to confirm first. Editing is always non-destructive: you can reopen any entry and adjust its name, conditions, and changes at any time.

</details>


# Location-based Personalization

Personalize your content for visitors in different locations. Whether it's a simple city or country swap or a full multi-variant experience, we've got you covered.

*<mark style="color:$info;">This feature is available only on Max and Enterprise plans</mark>*

<figure><img src="/files/F7vKJWaOzuQgajQKIB6Q" alt=""><figcaption></figcaption></figure>

***

### When to use location personalization

Location-based personalization shines when you want to show different content based on where your visitor is. Common use cases include:

* Store location pages that highlight the nearest location
* Pages that adjust content for regional preferences
* Pricing or messaging that changes by market
* Any content that benefits from being location-aware

***

### How to set up location-based personalization

We offer two approaches: Pick the one that fits, as the approach you take depends on how much of your project needs to change based on location.

#### Approach 1: Simple personalization (city and country only)

If you only need to surface a visitor's city or country in one part of your project, just prompt it in Maker, and you're done. It takes literally one step.

Here's what happens behind the scenes: our system detects where your visitor is and passes that city and country information to your project. You can surface it as text, use it in a headline, or reference it however you need.

**How to do it:**

1. Open your Maker project
2. In the prompt box, mention that you want to display the visitor's city and country
3. That's it. When you prompt, Makeer will set it up for you automatically

Publish the project and the embed code (starting with `embed.maker.new`) includes this location data by default, so it works on your site right away.

**Example prompt:**

> Display the visitor's city and country in the footer
>
> In the hero copy, replace {location} with the users current city&#x20;

***

#### Approach 2: Advanced personalization (multiple variants by location)

If you need different versions of your page for different locations, you'll create variants first, then set up rules that show the right variant based on where the visitor is.

Think of it like this: You design one "default" project, then create variations of it for each location you want to target. Each variant can be completely custom. Then you tell our system which variant to show to visitors in each city.

**Step 1: Create your base project and variants**

Start with a version that works for one location (or a default). Then create variants for the other locations you want to support.

For example, if you're running a store locator for multiple cities, create the default variant and ask Maker, either via a prompt or using our [Variants feature](/features/variants-and-create-experiences), to create the multiple variants.&#x20;

* Default variant: New York (default)
* Variant 2: Los Angeles
* Variant 3: London
* Variant 4: Paris
* Variant 5: Singapore

Each variant can have completely different content, headings, or layouts. It's up to you.

**Step 2: Use Maker to set up rules**

Once you have your variants, prompt Maker to create the rules that connect each variant to its location. You can prompt something like:

Maker creates the rules automatically based on your variants.

**Step 3: Publish**

Make sure to publish the page and use the embed code provided.&#x20;

{% embed url="<https://vimeo.com/1195376966?fe=ci&fl=sv&share=copy>" %}

***

### Use a Maker Skill

You can also use the **Location variants** Skill to create per-city variants so different content is shown to visitors based on their detected city. Use when you need completely different page experiences for different locations, like showing store info for local visitors or region-specific content.&#x20;

*Skill descriptions on the cards are previews only. The full instructions are written for Maker to read and apply, so you don't need to see the complete text to get the benefit.*

<figure><img src="/files/FyLRXaaJV9opCLV6uUUB" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/JGlMujRC3q3rGRoLpN1u" alt=""><figcaption></figcaption></figure>

<div><figure><img src="/files/m8EV0PZU8etfWDXInilS" alt=""><figcaption></figcaption></figure> <figure><img src="/files/3UHQ5lJpFUIaIfFVcHid" alt=""><figcaption></figcaption></figure></div>

***

### How location detection works

Our system uses CDN-provided location data to figure out where your visitor is. Here's what that means in practice:

* We detect the nearest major city to where a visitor is located
* For someone in Manhattan, we'll recognize them as "New York" (the nearest major city)
* For someone in a small town outside a major city, we fall back to the closest large city we can identify
* We pass both city and country data to your project

**A note on precision:** Because this uses CDN data, it's accurate at the city level for major cities, not down to neighborhoods or specific addresses. If you need more granular control, you can also pass location data as a query parameter (like `?city=Manhattan`), and that will override the auto-detected location.

***

### Testing your location variants

When you create location variants, you'll want to test them from different locations. Here are a few ways:

**Option 1: Use the Geo Simulator**\
In the Variant Rules section, click **Test in Geo Simulator** next to the variant you want to test. Select a country, region, or city to preview the page as a visitor from that location.

This lets you verify that the correct variant is being served without using a VPN or changing the page URL.

<div><figure><img src="/files/oQa5Q4D6VUYKWjiaXoaF" alt=""><figcaption></figcaption></figure> <figure><img src="/files/julwNXhTAWduDobzGaTj" alt=""><figcaption></figcaption></figure></div>

**Option 2: Use a VPN** If you connect to a VPN in a different city, your location will appear to be in that city when you load the page.

**Option 3: Use query parameters** Add a query parameter to your URL to manually set the location for testing:

```
yoursite.com/page?city=Mumbai
```

This overrides the auto-detected location, so you can test each variant without needing a VPN.

**Option 4: Ask your team** Have team members in different locations test the page from their actual locations. They'll see the variant appropriate for their city.

***

### Limitations and things to know

* **CDN coverage:** Our location detection works best for major cities. Small towns and rural areas might fall back to the nearest major city.
* **Radius coverage:** There's a radius around major cities. For someone in Mountain View, we'll recognize them as 'San Francisco' (the nearest major city). This is by design, but if you want finer control, use query parameters.
* **One-time setup:** Adding location support to your project is a one-time effort. Once it's live, it works.

### Embed code requirements

If this is a new project, then the right embed code will be created. If this is an older project that you are working on, make sure you publish the project and verify that the embed code uses the new location-aware embed code. Look for code that starts with:

```
embed.maker.new
```

### FAQs

<details>

<summary>What's the difference between simple personalization and variants?</summary>

Simple personalization is when you just want to display a visitor's city or country somewhere on your page. You mention it in your prompt, and we set it up automatically. Variants are for when you want completely different versions of your page for different locations. You create multiple versions, then we show the right one based on where someone is visiting from.

</details>

<details>

<summary>Do I need developer help to set this up?</summary>

Nope. For simple personalization, you just prompt it in Maker. For variants, you create the different versions in Maker, then prompt the Maker to connect them to locations. No code required.

</details>

<details>

<summary>How accurate is the location detection?</summary>

We detect visitors down to the major city level pretty accurately. For smaller towns or suburbs, we fall back to the nearest major city. For example, if someone is in a suburb outside San Francisco, they'll be detected as San Francisco. It's accurate enough for most use cases, but not neighborhood-level precise.

</details>

<details>

<summary>Can I personalize by country as well as city?</summary>

Yes, both city and country data are available. You can personalize just by country, just by city, or both together. Your Maker prompt can specify whichever level of detail you need.

</details>

<details>

<summary>How do I test location variants from my own location?</summary>

You have a few options. You can use a VPN to connect from a different city, or you can add a query parameter to your URL to manually set the location (like `yoursite.com/page?city=Mumbai`). The query parameter is the easiest for testing.

</details>

<details>

<summary>What if my visitor is using a VPN?</summary>

If someone has a VPN on, the location detection will show the city they're VPN'd into, not their actual location. That's just how location data works on the web. For most visitors without VPNs, you'll get accurate detection.

</details>

<details>

<summary>How many location variants can I create?</summary>

As many as you need. We've seen customers create variants for anywhere from 3 cities to 15+ depending on their needs. The setup is the same regardless of how many you create.

</details>

<details>

<summary>Will location personalization slow down my page?</summary>

No, location detection happens in the background. It doesn't add noticeable load time to your page.

</details>

<details>

<summary>How does the system know where my visitor is?</summary>

We use CDN location data, which is based on the visitor's IP address. It's accurate at the city level for major cities, but not precise enough for neighborhoods or specific addresses.&#x20;

</details>

<details>

<summary>What if I want to personalize based on regions or states instead of cities?</summary>

You can still do it. Just create your variants for whatever geographic division makes sense for your business, and prompt Maker to set up the rules accordingly.

</details>

<details>

<summary>Can I combine location data with other personalization?</summary>

Yes, you can create any variant and use the location-based personalization to show the correct page to the end user.&#x20;

</details>

<details>

<summary>What's the difference between having city and country available versus other location data?</summary>

We focus on city and country because those are the most useful for personalization. Things like street-level address detection are too imprecise with IP-based location data to be reliable, so we stick with what actually works.

</details>

<details>

<summary>What happens if location detection doesn't work for some visitors?</summary>

In rare cases where location data isn't available, your project will show the default variant you set. It's a graceful fallback so visitors always see something, even if we can't pinpoint their location.

</details>


# Enhance

Embed Maker projects directly on your website and manage them without touching code. Add, remove, or swap projects from a simple toolbar anytime you want.

*<mark style="color:$info;">This feature is available only on Max and Enterprise plans</mark>*

<figure><img src="/files/1F03SPH4c4mGCQfonHF9" alt=""><figcaption></figcaption></figure>

***

### Benefits

* Deploy the embed code once, then manage everything else from a toolbar
* Add, remove, or swap Maker projects anytime without touching code again
* Personalize by device, campaign, or visitor segment
* Test new content instantly without deployments

***

### Getting Started

If you are logged into your Maker account, head over to your site where you plan to add the project and look for the Maker Enhance icon.&#x20;

From the settings panel, click on Enhance, then click Install. You'll see a window with your embed code and setup options.

<figure><img src="/files/bF3HaMcHG218uR3VT4Ke" alt=""><figcaption></figcaption></figure>

**Choose your setup type:** Select either Static or SPA depending on your website.

**Copy the embed code:** You'll see the script to paste into your site's HTML. Copy this and paste it before the closing `</head>` tag on your site.

**Whitelist your domain:** Under "Only load on these websites," add your domain (for example, yoursite.com or localhost for testing). The script will only work on domains you add here.

**Optional:** Toggle "Show sign-in button on enhanced pages" if you want your team to be able to log in and edit from the live site.

**Publish:** Click Publish to save your settings.

That's it. Once the code is live on your site, you're ready to start adding projects.

<figure><img src="/files/eeDv3dghyAWdnBaV2BwM" alt=""><figcaption></figcaption></figure>

***

### Enhance for static sites

Add one script to your site's code, and Enhance will let you pick and choose where to place content right from a live preview.

#### **Step 1: Add the Script**

Paste the embed code anywhere in your site's `<head>` section. It doesn't matter where exactly. Somewhere near the top is fine.

```
<head>
  <!-- Your other meta tags and scripts -->
  <script src="..."></script>
</head>
```

#### **Step 2: Set Up Section IDs**

Enhance works by targeting sections of your page using their ID attribute. Make sure the sections where you want to place content have unique IDs. The following are just examples for your reference:

```
<section id="hero">
  <!-- Your hero content -->
</section>

<section id="features">
  <!-- Your features content -->
</section>

<section id="testimonials">
  <!-- Your testimonials section -->
</section>
```

***

### Enhance for Single Page Applications (SPAs)

SPAs work a bit differently because the page doesn't reload. You'll need to tell Enhance which sections it can work with upfront by adding slot attributes to your code.

#### **Step 1: Use the Right Script**

Make sure you're using the SPA version of the embed code. It includes an extra parameter: `data-maker-page-type="SPA"`

```
<script src="..." data-maker-page-type="SPA"></script>
```

#### **Step 2: Define Your Slots**

Add `data-maker-slot` attributes to the sections where you want to place Enhance projects. Give each slot a descriptive name. The following are just examples for your reference:

```
<header>
  <div data-maker-slot="header">
    <!-- Content will be added here -->
  </div>
</header>

<main>
  <div data-maker-slot="hero">
    <!-- Hero project goes here -->
  </div>
  
  <div data-maker-slot="features">
    <!-- Features project goes here -->
  </div>
</main>

<footer>
  <div data-maker-slot="footer">
    <!-- Footer content goes here -->
  </div>
</footer>
```

#### **Step 3: Configure Projects in Slots**

Once your script is live, you can use the Edit feature to place content.&#x20;

1. Visit your site and open the floating Maker Enhance toolbar. If you don't see the toolbar, add mkr-toolbar=true to the URL (for example, yoursite.com?mkr-toolbar=true). Open the floating Maker Enhance toolbar

<figure><img src="/files/hJYKzA60Vsb9wvx7Ls3u" alt=""><figcaption></figcaption></figure>

2. Click "Edit Page" in the toolbar

<figure><img src="/files/LDkEOBpcLzkpC1ifiRcu" alt=""><figcaption></figcaption></figure>

3. Select the slot where you want to add a project

<figure><img src="/files/qezpjNqZj2DMWbOClR1x" alt=""><figcaption></figcaption></figure>

4. Choose which Maker project to place there

<figure><img src="/files/KuhQ3swwU9PPKaaIQn8u" alt=""><figcaption></figcaption></figure>

5. Click publish, and your changes will go live immediately.&#x20;

***

#### **Slot Placement and Order**

A quick note: the order that slots appear in your toolbar might not match the order they appear on your page. That's because Enhance detects slots as they appear in your code, and the toolbar just displays what it finds. The important thing is that projects land in the right visual spot on your page, which they will.

<figure><img src="/files/NMLZLirFawaikDG6cQ5i" alt=""><figcaption></figcaption></figure>

**The dropdown (Append / Replace / Before / After)** controls *how* the Maker content gets injected into that slot:

* **Append** — adds the Maker content *after* whatever's already in that slot
* **Replace** — removes the existing slot content entirely and puts the Maker content in its place
* **Before** — inserts the Maker content *before* the existing slot content
* **After** — same as Append, inserts after

### Setting Up Rules and Conditions

Beyond just placing content, you can use rules to show different projects based on conditions like device type, URL path, or query parameters. This is where things get powerful.

<figure><img src="/files/IFcZYbed4Swk7P7e0sCO" alt=""><figcaption></figcaption></figure>

#### What Are Rules?

Rules let you say things like: "On mobile, show this project" or "When visitors arrive with this UTM parameter, show them this version instead."

#### How to Create a Rule

1. Open the toolbar and go to "Organization Rules"
2. Click the rule you want to modify, or create a new one
3. Set your condition (path, device type, query parameter, etc.)
4. Choose which project should show when that condition is true
5. Click publish

**Rule Priority**

If you have multiple rules that could match the same visitor, the one that's highest on your list wins. So order matters. If you want visitors from a specific campaign to see one version, and everyone else to see another, make sure the specific rule is listed first.

#### Common Rule Examples

* Show different content on mobile vs. desktop
* Display a specific project when a visitor lands on a certain page
* Change content based on a UTM parameter (great for campaigns)
* Personalize based on visitor segments (if you're using variants)

#### Tip: Duplicating Rules for Variations

If you want the same selectors and configuration but with different conditions (like mobile vs. desktop), just duplicate an existing rule. It copies everything for you, and you can then tweak the condition.

***

### Viewing Performance with Insights

Want to see how your Enhance projects are performing? Use the Insights view.

1. Open the toolbar and go to "Insights"
2. Select the project you want to check on
3. Pick a date range
4. You'll see performance data for that project

For more detailed analytics, click "View Insights" to access the full analytics dashboard. There you can dig into conversion data, links, overlays, and more.

<figure><img src="/files/NoLdRDZCoYT7jztuwILz" alt=""><figcaption></figcaption></figure>

***

### Troubleshooting

#### A section isn't showing up in Select and Edit

Make sure it has a unique ID attribute. If it does, it might be a layout issue where the section fills the full page width. Try selecting a different section, or chat with our team about adjusting the design.

#### Content doesn't appear on my site

Check that:

* Your domain is whitelisted in your settings
* The script is in your site's `<head>`
* For SPAs: you're using the SPA version of the script, and your slots are properly named

#### I see a flash when the page loads (SPA only)

For single-page applications, there might be a brief flash before content loads; however, this is rare.&#x20;

#### How do variants and personalization work with Enhance?

If your Maker project has variants or personalization rules set up, those still work exactly as they normally would. They'll trigger based on the conditions you've set in your project, and they'll display within their assigned slot.

***

### Next Steps

Once Enhance is live on your site, remember that:

* You can edit your projects without touching any code
* You can test new versions in your dev environment first
* You can A/B test different projects in the same slot by using rules
* Performance data is available whenever you need it

### FAQs

<details>

<summary>Do I need a developer to set up Enhance?</summary>

It depends on your site. For static sites, you just need someone who can add a script tag to your HTML before the closing head tag. That's it. For SPAs, you'll need your dev team to add slot attributes to your code. It's a small change, but they'll need to handle it.

</details>

<details>

<summary>What's the difference between static sites and SPAs?</summary>

Static sites serve the same HTML to every visitor. With Enhance, you can pick and choose where to put content using a visual toolbar. SPAs (single page applications) are built with frameworks like React or Vue and load content dynamically. With SPAs, your dev team needs to define slots ahead of time so Enhance knows where it can put things. After that, it works the same way.

</details>

<details>

<summary>Can I test Enhance before going live?</summary>

Absolutely. You can whitelist localhost and test everything in your dev environment first. That way you can see exactly how it'll work before pushing to production. This is actually how we recommend starting out, especially for SPA implementations.

</details>

<details>

<summary>How long does it take to set up?</summary>

Static sites can be live in minutes. You add the script, and you're good to go. SPAs take a bit longer because your dev team needs to add the slots, but once that's done, you're set.

</details>

<details>

<summary>What if I want to remove Enhance later?</summary>

Just delete the script from your HTML. Nothing will render without it. Enhance only works within the boundaries you've set, so removing the code removes everything.

</details>

<details>

<summary>Can I change which projects show without redeploying my site?</summary>

Yes, that's the whole point. You can swap projects, add new ones, or remove them anytime from the toolbar. No code redeploy needed.

</details>

<details>

<summary>How do I show different content on mobile vs. desktop?</summary>

Use rules. Create two rules for the same page, one with a mobile condition and one for desktop. Assign different projects to each, and Enhance will show the right version to each visitor.

</details>

<details>

<summary>Can I use Enhance with campaigns or UTM parameters?</summary>

Yes. You can set up rules based on query parameters, so you can show different projects to different campaign audiences without any manual work.

</details>

<details>

<summary>What happens if I have multiple rules that could match?</summary>

The first rule that matches wins. So if you have a specific campaign rule and a general rule, list the campaign rule first. Enhance evaluates rules from top to bottom and uses the first match.

</details>

<details>

<summary>Do my variants and personalization still work inside Enhance projects?</summary>

Completely. If your Maker project has variants or personalization set up, those continue to work exactly as they normally would. They'll trigger based on the conditions you've set in the project itself, and they'll display within the slot you've assigned.

</details>

<details>

<summary>Is it safe to let Enhance inject content on our site?</summary>

Yes. You're adding our script to your site, which means you have complete control. If you ever want to stop using Enhance, you delete the script. We can only add content to the sections you've explicitly allowed, and nothing else on your site is affected. Think of it like giving us specific doors to a specific room, and we only work within those doors.

</details>

<details>

<summary>Do you need access to our codebase?</summary>

No. Enhance only requires the script in your head tag and whitelisted domains. We're not accessing your codebase or any other systems.

</details>

<details>

<summary>What domains can I whitelist?</summary>

Any domain you own. You can whitelist yoursite.com, [www.yoursite.com](http://www.yoursite.com), staging.yoursite.com, or localhost for testing. Add as many as you need.

</details>

<details>

<summary>What if I see a brief flash when content loads?</summary>

This can happen with SPAs when content doesn't render immediately. It's rare.&#x20;

</details>

<details>

<summary>What about GDPR and privacy?</summary>

Enhance doesn't collect or store visitor data beyond performance metrics. Your visitors' personal information isn't shared with us. Maker does not store or retain any PII (Personally Identifiable Information)

</details>

<details>

<summary>A section isn't showing up in Select and Edit. Why?</summary>

Make sure the section has a unique ID attribute. If it does and it still doesn't show, it might be a layout issue where the section fills the entire page width so try selecting a different section.

</details>

<details>

<summary>Content isn't appearing on my site. What do I do?</summary>

Check a few things: Is your domain whitelisted? Is the script in your head tag? For SPAs: are you using the SPA version of the script, and are your slots properly named?&#x20;

</details>

<details>

<summary>The toolbar isn't showing up. What do I do?</summary>

Make sure you're on a whitelisted domain, the script is live on your site, and you've added `?mkr-toolbar=true` to the URL (for example, yoursite.com?mkr-toolbar=true).

</details>

<details>

<summary>I published changes, but they're not showing. What do I do?</summary>

Give it a moment to propagate. Refresh the page after you publish. If it's still not showing, check that you selected the right section and the right project.

</details>

<details>

<summary>Can my whole team edit with Enhance?</summary>

If you toggle "Show sign-in button on enhanced pages" during setup, your team can log in and make edits directly from your live site. Otherwise, it's just whoever has access to the installation settings.

</details>

<details>

<summary>What permissions do people need to edit?</summary>

They need to be logged into their Maker account and have access to your organization. If they can see your projects in Maker, they can edit them through Enhance.

</details>

<details>

<summary>Can I limit which team members can make changes?</summary>

Right now, anyone with organization access can make Enhance edits.

</details>

<details>

<summary>What if my site structure is complicated?</summary>

Enhance is flexible. Whether your sections are vertical, horizontal, nested, or in unusual layouts, as long as they have IDs (for static) or slot attributes (for SPA), Enhance can work with them. The toolbar just needs to know what to target.

</details>

<details>

<summary>Can I use Enhance with a headless CMS?</summary>

Yes. As long as your headless CMS renders HTML with identifiable sections or slots, Enhance can work with it.

</details>

<details>

<summary>Do I have a limit on how many projects I can embed?</summary>

Nope. Embed as many as you want across as many sections as you need.

</details>

<details>

<summary>What if I want to embed multiple projects in the same section?</summary>

Enhance is designed for one project per section.&#x20;

</details>

<details>

<summary>How do I make sure my Maker content loads quickly and doesn't leave a blank space while the page loads?</summary>

This is already built into your embed code. The script tag includes `fetchpriority="high"`, which tells the browser to prioritize fetching it over other lower-priority resources on the page, so it doesn't get queued behind images, fonts, or other scripts. Combined with the script being placed in `<head>` and marked `async`, your Maker content can start loading as early as possible without blocking the rest of the page from rendering -- so it shows up quickly instead of leaving a visible gap.

If you have an older embed code that predates this update, you can get the same benefit by adding `fetchpriority="high"` to your existing script tag -- no need to regenerate the embed code.

</details>


# Templates

Templates let you save any project as a reusable starting point. Build your own library, browse Maker's public templates, or let Maker automatically pick one when creating AI+ content.

<figure><img src="/files/VfRa078BZvw4kwxes4Tr" alt=""><figcaption></figcaption></figure>

***

### Saving a Project as a Template

You can turn any project into a template directly from the project menu.

1. Open your project in Maker AI
2. Click the project name dropdown at the top left
3. Hover on **Collections**
4. **Select "Templates" collection**

Once saved, the template will be available in your Templates library and can be used as a starting point for future projects.

***

### Accessing Your Templates

Templates live inside the **Collections** section of the project dropdown menu. From there, you will find two tabs:

* **My Templates** -- your own saved templates, private to your workspace
* **Maker Templates** -- Maker's curated public templates, available to all users

***

### Searching for Templates

You can search for templates using keywords. The search is AI-powered, so it understands context -- not just exact titles. You can search by things like:

* Component type (e.g., hero section, product grid)
* Layout style
* Industry or use case
* Colors or visual characteristics

Search suggestions appear automatically and rotate each time you refresh, so it is easy to explore what is available.

Results are ranked by exact title match first, then by keyword relevance.

***

### Using Templates in AI+ Content Projects

When starting an AI+ content project, you have two ways to use a template:

**Manually select a template** Use the "Use this template" option to browse and pick a template yourself. This prefills the home page with that design before generation begins.

**Let Maker choose for you** If you do not select a template, Maker will automatically pick one based on the keywords in your request. Maker prioritizes your private templates first, then falls back to Maker's public templates if no private ones match.

You can also mark any project as "AI+" so it appears as a template option specifically during AI+ content creation (as shown in the Remix menu under AI+ content).

***

### Where You Can Access Templates

Templates are accessible from multiple places in the product:

* The **Templates section** inside Collections (project dropdown)
* The **home screen** when starting an AI+ content project
* **Template detail views** when browsing individual templates

***

### Tips

* Save your best-performing layouts as templates to speed up future projects
* Use descriptive names so AI-assisted search and auto-selection can match them accurately

***

### FAQs

<details>

<summary><strong>What is the difference between My Templates and Maker Templates?</strong></summary>

My Templates are ones you have saved yourself. Maker Templates are curated layouts provided by Maker, available to all users as a starting point.

</details>

<details>

<summary><strong>Can I search for a template without knowing the exact name?</strong></summary>

Yes. The search is AI-powered, so you can use descriptive keywords like "product grid," "minimal layout," or "fashion brand" and it will surface relevant results. Suggestions also rotate on refresh if you want some inspiration.

</details>

<details>

<summary><strong>Does Maker automatically pick a template for me?</strong></summary>

It can. When creating AI+ content, if you do not manually select a template, Maker will automatically choose one based on the keywords in your prompt. It checks your private templates first, then Maker's public library.

</details>

<details>

<summary><strong>How do I make sure my template gets used during AI+ content creation?</strong></summary>

When saving your project, mark it as "Templates " and "AI+" in collections. This is so it shows up as a template option during AI+ content generation.&#x20;

</details>

<details>

<summary><strong>Where can I access my templates?</strong></summary>

From the Collections section in the project view, the home screen when starting an AI+ project, or directly from a template detail view.

</details>

<details>

<summary><strong>Any tips for getting better results from templates?</strong></summary>

Give your templates descriptive names. Since search and auto-selection are AI-powered, the more context your template name provides, the better Maker can match it to the right project.

</details>


# Product Content Overrides

Product Content Overrides let you customize how your products look and read across your Maker projects, without making any changes to your store. This is a Maker Enterprise feature.

***

### K**ey Benefits**

* You can override titles, descriptions, promo text, images, FAQs, and variant-specific fields. All of it layers on top of your existing product data. Your original store content stays untouched and can always be restored.
* Overrides can also be scoped to specific conditions, such as a language, a sale, or an A/B test variant, so different audiences see different content for the same product.

***

### **Steps**

Start a project using product data from your connected store. From there, you can ask Maker to make changes to your live product data. Those changes persist across projects and can be scoped, adjusted, or removed at any time.

**Example prompts to try:**

* "Translate all of the products on this page to Spanish"
* "Generate new lifestyle images for these products"
* "Rewrite all product descriptions to sound less robotic"

***

### What can you do with it?

**Translate product content** Ask Maker to translate your product titles, descriptions, and other fields into any language. Scoped to a flag (e.g. `?lang=es`), so only the right audience sees it.

**Generate lifestyle images** No photoshoot? Ask Maker to generate lifestyle images for your products. They get added directly to the product without touching your store.

**Research-backed FAQs** Ask Maker to generate FAQs for a product and it will pull from real web sources, including competitor pages, reviews, and forums, to surface questions customers actually ask. No writing from scratch.

**Batch description rewrites** Apply copy changes across your whole catalog in one go. Maker handles it at scale, not product by product.

**Experiment without risk** Rewrite copy, restructure descriptions, or test a completely different tone, scoped to a flag like `?beta`. Your live site stays unchanged. Users on the beta URL see the experiment; everyone else sees nothing different.

***

### Requirements

Just a connected store.

***

### Limitations

For safety reasons, AI cannot edit your official product prices.

***

### FAQ

<details>

<summary>Will this affect my actual store data?</summary>

No. Overrides layer on top of your existing product data. Your original store content is never modified, and overrides can be removed or edited at any time.

</details>

<details>

<summary>Do I need to set anything up before using this?</summary>

You need a connected store (either via a catalog feed or via Maker's Shopify App). Once that's in place, you can start asking Maker to make changes to your product content right away. In addition, you need to be on the Maker Enterprise plan.&#x20;

</details>

<details>

<summary>Can I apply changes to my whole catalog at once?</summary>

Yes. Maker applies overrides in bulk, so you don't have to update products one by one. For example, you can ask it to rewrite all your product descriptions in a single prompt.

</details>

<details>

<summary>Can different audiences see different versions of my product content?</summary>

Yes. Overrides can be scoped to specific conditions like a language, a sale, or an A/B test variant. So the same product can show different content depending on who's viewing it and from what URL.

</details>

<details>

<summary>Can Maker change my product prices?</summary>

No. For safety reasons, Maker cannot edit your official prices. Everything else, titles, descriptions, images, FAQs, promo text, and variant fields, is fair game.

</details>

<details>

<summary>If I remove an override, what happens?</summary>

Your original store data comes back. Nothing is permanently changed, so you can always revert to where you started.

</details>

<details>

<summary>Is this feature available on my plan?</summary>

Product Content Overrides is available on Maker Enterprise only. It is not included in the Pro, Team, or Max plans.&#x20;

</details>

<br>


# Skills

Skills are specialized instructions that guide how Maker handles specific tasks. Each one comes with domain knowledge and best practices baked in, so Maker knows exactly what to do.

<figure><img src="/files/ABIQBIQY1T9NiPZXuUSb" alt=""><figcaption></figcaption></figure>

***

### K**ey Benefits**

* **Get more out of Maker without extra effort.** Skills unlock capabilities you might not even know exist, like full performance audits, accessibility checks, and animation workflows, all without needing to know the right prompt.
* **Consistency across your projects.** Instead of explaining the same instructions every time, Skills make sure Maker follows the same approach every session.
* **Tailored to how you work.** Maker learns from your chat history and surfaces custom Skills based on your actual workflows, so the tool gets smarter the more you use it.
* **Turn any workflow into a repeatable process.** Whether it's a bug fix, a design pattern, or a QA checklist, you can save it as a Skill and come back to it whenever you need it.

***

### **Steps**

In the editor, click the **+** button at the bottom of the chat, then select **Skills**. You'll see a searchable list of all available Skills. Tap the **+** icon next to any Skill to add it to your current chat.

<figure><img src="/files/wWT1KY9n3Db1JilyfENL" alt=""><figcaption></figcaption></figure>

<figure><img src="/files/X6LQHdMr7Eu82OA7k5xd" alt=""><figcaption></figcaption></figure>

#### **Built-in Skills**

These are ready to use out of the box. Some examples of what's available:

* **Performance / Core Web Vitals** - Audit your site for speed and page experience metrics like LCP, INP, and CLS
* **Accessibility** - Check your pages against WCAG 2.1 guidelines
* **Animate** - Analyzes a feature and strategically adds animations and micro-interactions that enhance understanding, provide feedback, and create delight.
* **Copywriting** - Writes, rewrites, or improves marketing copy for any page type including homepage, landing pages, pricing pages, feature pages, about pages, and product pages.
* **Frontend design** - Creates distinctive, production-grade frontend interfaces with high design quality. Generates creative, polished code and UI design that avoids generic AI aesthetics. Loaded proactively for any web build.
* **Bolder** - Increases visual impact and personality in designs that are too safe, generic, or visually underwhelming, creating more engaging and memorable experiences.
* **Quieter** - Reduces visual intensity in designs that are too bold, aggressive, or overstimulating, creating a more refined and approachable aesthetic without losing effectiveness.
* **Delight** - Identifies opportunities to add moments of joy, personality, and unexpected polish that transform functional interfaces into delightful experiences.
* **Polish** - Performs a meticulous final pass to catch all the small details that separate good work from great work.
* **Audit** - Shared delivery conventions for any audit-style skill. Produces a structured markdown report plus anchored comments on flagged preview elements. Used by other audit skills as a foundation.
* **Web quality audit** - Comprehensive web quality audit covering performance, accessibility, SEO, and best practices. Equivalent to a Lighthouse-style review.
* **Security audit** - Pre-publish security review tailored to Maker's client-side surface. Checks for DOM XSS, secrets baked into source, unsafe redirects, unsafe third-party scripts, postMessage handling, client-side storage of sensitive data, unsafe form actions, and external-link hygiene.
* **Web design guidelines** - Reviews UI code for compliance with Web Interface Guidelines covering accessibility, UX patterns, and design best practices.
* **Conversion rate optimization** - Produces a prioritized CRO audit covering value proposition, headlines, CTAs, visual hierarchy, trust signals, objection handling, friction points, persuasion psychology, and A/B test hypotheses. Analysis only; does not edit code unless asked.
* **Ad congruence** - Scores how well a landing page keeps the promise its ad creatives make. Produces a congruence score (0 to 100) across product/visual match, message and offer match, category scent, offer integrity, and CTA continuity. Pulls top spenders from connected Meta or Google Ads accounts.
* **Ad aware landing page** - Builds a landing page with zero message mismatch from the ad that drove the click. Fetches ad data live from connected analytics, scrapes brand styles from the advertiser's website, and asks clarifying questions before building.
* **Performance** - Optimizes web performance for faster loading and better user experience, including load time reduction and page speed improvements.
* **Core web vitals** - Optimizes Core Web Vitals (LCP, INP, CLS) specifically for better page experience and search ranking.
* **Optimize** - Identifies and fixes performance issues to create faster, smoother user experiences.
* **Best practices** - Applies modern web development best practices for security, compatibility, and code quality.
* **Accessibility** - Audits and improves web accessibility following WCAG 2.1 guidelines, including screen reader support and keyboard navigation.
* **SEO** - Optimizes for search engine visibility and ranking, including meta tags, structured data, and sitemap optimization.
* **Clarify** - Identifies and improves unclear, confusing, or poorly written interface text to make the product easier to understand and use.
* **Video embed** - Embeds HTML5 video correctly when a user provides an mp4, webm, or m3u8 URL. Picks sensible defaults for preload, poster, autoplay, controls, muted, playsinline, loop, and lazy-loading based on placement. Handles HLS streams via native Safari plus hls.js fallback. Supports branded player theming via Media Chrome.
* **Language variants** - Creates per-language variants that translate all page content and activate via the ?hl= query parameter. Asks which languages to support, translates all visible text, and stores translations as variant features.
* **Location variants** - Creates per-city variants so different content is shown to visitors based on their detected city. Writes a named variant for each city with matching routing rules.
* **Embed** - Post-publish guide for installing Maker projects on external sites. Covers permalink, custom domain, single-project embed, and Enhance for multi-project routing. Includes platform-specific steps for Shopify, Wix, Webflow, WooCommerce, Squarespace, BigCommerce, Magento, and HubSpot. Explains the four install variants and guides A/B testing and per-segment variant setup.
* **Shopify storefront** - Displays Shopify products, prices, collections, and shopping cart in a project via the Storefront API using the @shopify/storefront-api-client SDK. Injects credentials automatically and guides users through connecting their store if not yet configured.\
  *Please note that the Shopify Storefront Skill is only available on the Maker Enterprise plan.*&#x20;
* **Claude design import** - Converts a Claude Design (claude.ai/design) HTML export into a React component wired through main.tsx. Also triggers when a project contains static HTML that needs to become a React app.
* **Planning** - Structured planning skill that asks clarifying questions about goals, audience, and preferences, then produces a detailed plan with component architecture, file paths, and phased implementation steps. Used proactively when scoping work before coding.

<figure><img src="/files/n7dH7hsJ8UF9uog9iegn" alt=""><figcaption></figcaption></figure>

There are many more to explore. If you're not sure what Maker can do, browsing the Skills list is a great place to start.

#### **Custom Skills (auto-generated)**

Maker continuously reviews your chat history and looks for patterns or workflows that could be turned into a reusable Skill, just for you. When it finds something, that custom Skill will show up automatically in your Skills list. No action needed on your end.

#### **Save something as a Skill**

If Maker just helped you with something you know you'll want to repeat (a specific workflow, a set of instructions you gave it, or a tricky bug fix you want to remember), type **"save this as a skill"** in the chat. Maker will package it up so it's available for next time.

#### **Create a custom Skill manually**

You can also build your own Skill from scratch:

1. Go to Settings > Memory & Skills
2. Give your Skill a name
3. Select "Skill" under Type and the description of the Skill
4. Add instructions for what Maker should do when this Skill is used

This is great for standardizing how your team handles recurring tasks or for documenting specific approaches you want Maker to follow every time.

#### **Good to know**

* You can add multiple Skills to a single chat if needed.
* Custom Skills (both auto-generated and manually created) are private to your account.
* Skill descriptions on the cards are previews only. The full instructions are written for Maker to read and apply, so you don't need to see the complete text to get the benefit.

***

Also updating the What's New blurb with the same change:

***

**Skills are now front and center**

You've always had access to powerful Skills like performance audits, web vitals checks, animations, and more, but until now, Maker chose when to use them behind the scenes. Now you can browse and apply Skills yourself, right from the editor.

A few highlights:

* Browse all available Skills and add them to any chat
* Maker will also review your chat history and surface custom Skills tailored to your workflows
* Ask Maker to "save this as a skill" anytime you want to turn a workflow or fix into something repeatable
* Or create your own custom Skills manually in Settings > Memory & Skills

***

FAQ

<details>

<summary>Why are the Skill descriptions on the cards cut off?</summary>

That's by design. The descriptions you see on the cards are just a quick preview so you know what the Skill is about. The full instructions inside each Skill are written for Makerto read and follow, not for users. When you add a Skill to your chat, Maker gets all the details it needs to do the job right.

</details>

<br>


# Design Mocks

Generate multiple design mocks for a project in seconds. Describe what you want or paste a URL, and Maker will create ready-to-review mockups you can preview, remix, and turn into a full project.

{% embed url="<https://vimeo.com/1192296901?fe=sh&fl=pl>" %}

***

### K**ey Benefits**

* **Skip the blank canvas.** Instead of starting from scratch, you get 4 fully designed page concepts to react to and build from. It's a faster way to find your direction.
* **Explore more ideas, faster.** Generating multiple design directions in under a minute means you can compare layouts, styles, and content approaches side by side without waiting on a design cycle.
* **Desktop and mobile from the start.** Every mock comes with both views, so you're evaluating responsiveness from day one instead of retrofitting it later.
* **Low cost to experiment.** At roughly 51 credits per batch, you can generate several rounds of concepts without burning through your monthly credits.
* **Non-destructive workflow.** Your original mocks are always preserved. Every change creates a new variant, so you never lose a direction you liked.
* **Straight to a working project.** When a mock clicks, one button turns it into a full React project inside Maker. No handoff, no rebuilding from a static file.

***

### **Steps**

**Step 1: Open Design Mocks**

In the chat input, click the **Tools** button and select **Design Mocks**. You'll see a "Design mocks" tag appear in the input area to confirm the tool is active.

<figure><img src="/files/feE4mLpbMaSe4uaZVwWB" alt=""><figcaption></figcaption></figure>

**Step 2: Describe Your Page**

Type a description of the page you want to create, or paste in a page URL for Maker to reference. The more detail you give, the more tailored the results. For example: *I want to create a new homepage for my site, and I want to be have a modern aesthetic. Here's the URL- [www.mysite.com](http://www.mysite.com)*

**Step 3: Review Your Mocks**

Maker generates **4 distinct design variants** at once, each with both desktop and mobile views. Generation typically completes in under a minute and uses approximately 51 credits.

Each mock is a full-page visual you can scroll through to see the complete layout, sections, and content.

***

### What You Can Do with a Mock

Once your mocks are generated, select any variant to see your options:

* **Select**: Click on a mock to select it. Once selected, you can ask Maker to make changes in the chat (for example, *change the hero section to be more minimal*). Any changes you request will create a new variant rather than editing the original.
* **Preview**: Opens a full-screen preview of the mock so you can see exactly how it looks on desktop and mobile.
* **Remix**: Generates a new set of variations inspired by the selected mock.
* **Create Project**: Converts the selected mock into a full React project you can continue building in Maker. This is how you go from concept to a working project.

<figure><img src="/files/nQRPQvmLurd3PKI9CQRy" alt=""><figcaption></figcaption></figure>

***

### Generating More Options

If the first set of mocks doesn't hit the mark, click the **Generate more** button at the bottom of the mock panel. This creates 4 additional design variants, each one distinct from the previous set. You can keep generating until you find a direction you like.

***

### Good to Know

* **Mocks are immutable.** When you ask Maker to make changes to a selected mock, it creates a new variant instead of overwriting the original. Your earlier designs are always preserved.
* **Desktop and mobile included.** Every mock is generated with both desktop and mobile layouts, so you can evaluate responsiveness right away.
* **From mock to project.** When you're happy with a direction, "Create project" turns the design into a real, editable React project inside Maker. From there you can refine, add functionality, and publish.
* **Credit usage.** A full set of 4 mocks costs approximately 51 credits.


# Comments

Comments let you leave feedback directly on the specific elements you're talking about. Just click the element, add your comment, and your teammates know exactly what you mean.

<figure><img src="/files/9cKURwEk4Q4f2Y3FPpuF" alt=""><figcaption></figcaption></figure>

***

### K**ey Benefits**

* Leave feedback directly on the element it's about — no more "the button under the hero, second row."
* Approve a comment to send it straight to Maker as a chat prompt, with the element context already attached.
* Loop teammates in with @mentions, threaded replies, emoji reactions, and image or file attachments.
* Every notification — mentions, replies, comments on your projects, approvals, archives — lands in the bell and your inbox.

***

### **Steps**

1. Open a project and look for the chat bubble icon in the preview toolbar.
2. Click it and choose "Add comment."
3. Click any element in the preview to anchor the comment to it.
4. Type your comment in the pop-up. Use @ to mention a teammate, drag images or .zip files in, or click "Add files and photos" to pick from the asset library.
5. Click "Comment."

A pin appears on the element in the preview, and the comment lands in the sidebar.

***

### How It Works

Comments live in a panel that slides in from the right of the editor. Each comment is anchored to a specific element in the preview, so anyone opening the panel can click a row and jump straight to the element it's about. The same anchor stays put across desktop and mobile viewports, and across variants if you've split your project into variants.

The Comments panel has two sections: **Active** and **Archive**. Active is the work-in-progress queue. Archive is the history of everything that's already been approved or rejected.

#### What's on Every Comment Row

* The element's display name (like "Hero headline") and the viewport (Desktop or Mobile) on which it was made.
* If the project uses variants, a tag showing which variant the comment is scoped to.
* The comment body with @mentions highlighted and links clickable.
* Author first name, time ago, and any image or file attachments.
* A row of emoji reactions: 👍 ❤️ 🎉 👀 🚀. Click to toggle yours; hover to see who else reacted.
* **Reply**, **Approve**, and **Reject** buttons.

#### Approving a Comment

Clicking **Approve** sends the comment to Maker as a chat prompt, with the element you commented on already attached as context (and any image or file attachments forwarded into the prompt). It's the same as if you'd selected the element by hand and typed the comment into the chat — Maker just acts on it. The comment moves to the Archive section and is marked **Approved**.

#### Rejecting a Comment

Clicking **Reject** archives the comment without sending it to Maker. It moves to the Archive section marked **Rejected**.

Either way, the comment author gets an email letting them know what happened. Approved and Rejected comments can still be **Unarchived** from the Archive section if you change your mind.

<figure><img src="/files/aj398A2Q5SnXgSahdVMA" alt=""><figcaption></figcaption></figure>

#### Replies

Use **Reply** under any comment to add to the thread. Replies appear nested under the root comment. You can @mention, attach images, and attach files inside replies too. Threads are flat — one level deep — so replies stay easy to scan.

***

### Filtering and the Archive

The Comments panel has filter chips at the top:

* **All** — every active comment in the project.
* **Mentions** — only threads where you're mentioned (in the root comment or any reply).
* **Variant dropdown** (only shown when your project has variants) — narrow to a specific variant, or show all.

Archived comments live in their own collapsible section at the bottom of the panel — both Approved and Rejected. Each row has an **Unarchive** button that puts the comment back into Active.

<figure><img src="/files/bfdfht08uvjKjVQsHVXb" alt=""><figcaption></figcaption></figure>

#### Toggling Pins On and Off

At the top of the panel there's a **Show comments in preview** checkbox. Uncheck it to hide the pins (the comments themselves stay in the panel).

***

### Notifications and Emails

Whenever a comment involves you, you'll know about it in two places.

#### In the App — The Bell Icon

The **bell** in the left sidebar shows a red badge with your unread count. Open it to see the latest:

* **Mentions** — when someone @-mentions you.
* **Comments on your projects** — when a teammate leaves a root comment on a project you created (and you weren't already mentioned).
* **Thread replies** — when someone replies in a thread you're part of.
* **Approvals and archives** — when someone approves or archives a comment you wrote.

Unread rows have a blue accent on the left. Clicking a row opens the project and focuses the comment.

At the bottom of the bell dropdown, **View comments** opens an org-wide sidebar listing the latest comments across every project in your organization — handy for catching up on what the team is leaving feedback on.

#### By Email

Maker also emails you the same events:

* "{Name} mentioned you in Maker" — you were @-mentioned.
* "{Name} replied to a comment in Maker" — a new reply landed in a thread you're in.
* "{Name} commented on your project in Maker" — someone left a comment on a project you own (sent only when you weren't already covered by a mention or reply email).
* "{Name} approved your comment in Maker" — your comment was approved and sent to Maker.
* "{Name} archived your comment in Maker" — your comment was rejected.

***

### Tips

* You can leave a comment without typing any text — an attached image or file on its own is a valid comment.
* If your project has variants, a comment is scoped to the variant you were viewing when you created it. Tick **Show on all variants** in the popup to make it global instead.
* The chat bubble icon shows a red badge with your unread mention count for the current project.
* Click a row in the Comments panel and Maker focuses that comment in the preview (and switches the variant or viewport if needed).
* Anyone can be invited as a **Viewer**. Viewers can read, comment, reply, and react — they can't approve, reject, or unarchive. Great for stakeholders who should give feedback but not push changes.

***

### FAQ

<details>

<summary>What happens when I approve a comment?</summary>

The comment is sent to Maker as a chat prompt, with the element you commented on attached as context and any image or file attachments forwarded along. Maker starts working on it as if you'd typed the message yourself. The comment moves to the Archive section marked **Approved**.

</details>

<details>

<summary>What happens when I reject a comment?</summary>

The comment is archived without being sent to Maker. It stays in the Archive section marked **Rejected**, and the comment author gets an email letting them know. You can Unarchive it anytime to put it back into Active.

</details>

<details>

<summary>Can I attach files to a comment?</summary>

Yes. You can drag in images or .zip files directly, or click **Add files and photos** to pick from the assets library. Attachments show up on the comment in the panel and are forwarded to Maker when the comment is approved.

</details>

<details>

<summary>How do @mentions work?</summary>

Type @ in the comment body and a picker pops up with your organization's members. Pick one and their first name lands in the comment as a mention. They'll get an email and a bell notification. If two teammates share a first name, both are notified.

</details>

<details>

<summary>Can I see all comments across my whole organization?</summary>

Yes. Open the **bell** in the left sidebar and click **View comments** at the bottom. A sidebar slides in with the latest comments across every project in your org. Click any row to jump to that comment in the project.

</details>

<details>

<summary>Where do archived comments go?</summary>

They stay in the same Comments panel, in the **Archive** section at the bottom (under Active). Both Approved and Rejected comments live there. Each row has an **Unarchive** button to put it back into Active.

</details>

<details>

<summary>What if my project has variants?</summary>

By default, a comment is scoped to the variant you were viewing when you created it — it only shows up in the preview and panel when that variant is active. Tick **Show on all variants** in the create popup to make the comment global instead. The Comments panel also has a variant dropdown so you can narrow the list to a single variant.

</details>

<details>

<summary>Can Viewers leave comments?</summary>

Yes. Members with the **Viewer** role can read, leave, reply to, and react to comments. They can't approve, reject, or unarchive — that's reserved for owners and admins.

</details>

<details>

<summary>How do I stop the notification emails?</summary>

Every comment notification email has an **unsubscribe** link in the footer.

</details>


# Claude Design Import

Maker supports importing prototypes built in Claude Design. Start your design in Claude, bring it into Maker AI to refine it, and publish when it's ready.

***\*This feature is currently experimental, but available to try.***

<figure><img src="/files/Jq41VThFK0EhB6ClRvxN" alt=""><figcaption></figcaption></figure>

***

### K**ey Benefits**

* **Faster time to publish.** If you already have a prototype in Claude Design, you don't have to rebuild it from scratch in Maker AI. Import it and go straight to refining and publishing.
* **Use Claude Design for exploration, Maker AI for production.** Claude Design is great for quickly iterating on ideas and layouts. Once the concept feels right, importing into Maker AI gets it production-ready and connected to their actual site/product data.
* **Accessible to more team members.** Team members who don't have access to Maker can still explore and prototype ideas in Claude Design. Once the concept is ready, someone with Maker access can import it and bring it to life.
* **Another way to explore your design.** Claude Design gives you an additional option to experiment with layouts and ideas outside of Maker. If you prefer to start there, you can, and then import when you're ready to move forward. It's just one more pathway to get to the same result.
* **Cost-efficient iteration.** It's often easier (and cheaper in credits) to get the big-picture layout right in Claude Design first, then fine-tune in Maker AI, rather than going through multiple Maker AI generations to land on the right direction.

***

### What You'll Need

* A Claude Design prototype (the shareable preview link)
* A Maker AI account with available credits

**Note:** The cost of importing a Claude Design prototype may vary depending on the complexity of your design.

***

### Step-by-Step: Importing Your Claude Design

#### Step 1: Start a new project

From the Maker home screen, click the **Explore more +** button in the top-right area above the prompt box.

This will open the full menu with all available options.

<figure><img src="/files/hnrmPEnsehol3PMU4jwM" alt=""><figcaption></figcaption></figure>

#### Step 2: Select "Import from Claude Design"

In the expanded menu, you'll see a section at the top with page-building options. Look for the **Import from Claude Design** card. Click on it to start the guided import flow.

#### Step 3: Follow the Guided Import Flow

Maker will walk you through the steps to bring your Claude Design into the editor.&#x20;

<figure><img src="/files/JPwXWCiPec8nIPYpmhZo" alt=""><figcaption></figcaption></figure>

#### Step 4: Claude Design Preview Link

1. Open the design at <https://claude.ai/design>.
2. Click the "Share" button in the top-right.
3. Choose "Download project as .zip"
4. Drop the \`.zip\` into Maker’s chat (or click the attach button and select it).

#### Step 5: Review and Refine

Once the import is complete, review the result in the Maker editor. You can make adjustments, add interactivity, connect product data, or do anything else you'd normally do in Maker.

***

### FAQ

<details>

<summary>Can I import into an existing Maker AI project?</summary>

Yes, you can. However, importing into an existing project adds more complexity, and there's a higher chance the Maker may not get everything right. For the best results, we recommend building from scratch when importing a Claude Design.

</details>

<details>

<summary>How much does it cost?</summary>

Costs vary depending on the complexity of the design.&#x20;

</details>

<details>

<summary>Is this feature stable?</summary>

It's currently experimental. Results are generally good, but you may need to make some manual adjustments after import.

</details>

<details>

<summary>Where do I find my Claude Design preview link?</summary>

In Claude Design, use the share or preview option to generate a shareable link for your prototype. That's the link you'll paste into Maker.

</details>

***

###


# Use Maker from your AI Assistant

Connects your favorite AI tools directly to Maker. Instead of switching between your AI assistant and Maker, you can create, edit, and manage projects right from the AI you're already using.

*<mark style="color:$info;">This feature is available only on Max and Enterprise plans</mark>*

<figure><img src="/files/WkXI4AV9OEts6ZbudMbX" alt=""><figcaption></figcaption></figure>

***

### Key Benefits

* **Talk to Maker from Claude, ChatGPT, Claude Code, or Codex**
* **Your AI subscription does the thinking.** No Maker credits used for the assistant's work itself. Generation runs on your existing Claude Pro, ChatGPT Plus, or Cursor plan.
* **Your assistant can list, open, edit, and publish your Maker projects** including the things only Maker can do (preview, hosting, A/B tests, variants, your skill catalog).
* **One-time setup.** Connect once and Maker shows up in every new chat with that assistant.

***

### Supported AI Tools

* Claude Desktop & Claude.ai
* OpenAI Codex
* ChatGPT
* Claude Code

***

### How to Set It Up

Open **Settings > AI assistants** in Maker. You'll see a card for each assistant we support. Pick the one you use, follow the four-step pop-up, and you're done.

#### Claude Desktop & Claude.ai

Works in both the web app at **claude.ai** and the Claude desktop app.

1. **Pro plan:** Open **Customize > Connectors** in Claude and click **+ Add custom connector**.
2. **Team or Enterprise:** Your admin opens **Organization settings > Connectors > Add > Custom > Web** once for the whole org. After that, you go to **Customize > Connectors > Connect**.
3. Paste the Maker server URL (it's shown in the popup) and click **Add**, then **Connect**.
4. Sign in to Maker in the popup that opens. Claude will then have Maker's tools available in any conversation.

> Once connected, you can pin Maker tools on or off per chat using the **Tools** button in Claude's composer.

#### ChatGPT

Available on **Business, Enterprise, and Edu** workspaces with developer mode turned on.

1. Open ChatGPT and go to **Settings > Connectors**.
2. Click **Add connector** and paste the Maker server URL from the Maker popup.
3. Complete the sign-in flow. Maker tools then appear in the composer's **Tools** picker.

<figure><img src="/files/rY8u0Aw7KezfBQM7NbtD" alt=""><figcaption></figcaption></figure>

#### Claude Code (for developers on your team)

Anthropic's terminal coding agent. One command and you're done.

1. Run this in a terminal:

```
   claude mcp add --transport http maker https://ai.maker.co/mcp
```

2. Start or restart a Claude Code session, then type `/mcp` and follow the sign-in prompt.
3. Ask Claude Code "list my Maker projects" to confirm it worked.

#### Codex (for developers on your team)

OpenAI's terminal coding agent. Set up via CLI or by editing your config file.

1. Run this in a terminal:

```
   codex mcp add maker --url https://ai.maker.co/mcp
```

2. Run `codex mcp login maker` to sign in.
3. Or edit `~/.codex/config.toml` directly with the snippet shown in the Maker popup.

***

### How It Works

When you connect an AI assistant to Maker, you're plugging it into the same set of tools you use inside the Maker app—opening projects, editing copy, swapping images, kicking off A/B tests, pulling from your skill catalog, looking at insights, and so on.

The assistant runs in its own window (Claude, ChatGPT, etc.) and calls Maker behind the scenes whenever your request needs Maker to do something.

**Your AI subscription does the thinking.** All the language model work—understanding your prompt, drafting copy, deciding which tool to call—happens inside the assistant you already pay for. Maker doesn't bill a token for any of it. If you're already paying for Claude or ChatGPT, you've already paid for half of Maker.

**Plus everything only Maker can do.** A chat window on its own can't host your site, preview it across viewports, run a real A/B test, or push to your custom domain. Your assistant calls Maker for those steps. The chat sees the result and keeps going.

Anything you can do by clicking around in Maker, your assistant can now do for you from a chat.

***

### What You Can Ask Your Assistant to Do

Some prompts that work right out of the box:

* "List my Maker projects from the last two weeks."
* "Open the coffee-shop landing page and rewrite the hero headline."
* "Take a screenshot of my pricing page preview."
* "Make three colour variations of this landing page."
* "Update the testimonial section to match my brand."
* "Why isn't the contact form submitting?"
* "Spin up an A/B test of two different hero photos on the home page."

You don't need to memorise commands—talk to the assistant the way you normally would. It figures out which Maker tool to call.

> **The fastest way to learn what's possible is to ask the assistant itself.** Right after you connect, try "What can you do with Maker?" or "What Maker tools do you have available?"—the assistant has the full, up-to-date list of every Maker capability it can reach, and it'll tell you in plain English. We add new tools regularly, so the assistant's answer is always more current than any list we could write here.

***

### Managing Your Connections

Open **Settings > AI assistants** and scroll to **Server details** to see:

* The Maker server URL you'd paste into a new client.
* The list of assistants currently connected to your account, with the last time each one was used.
* A **Revoke** button on each—click it to disconnect that assistant. The next time you ask Maker to do something from that chat, you'll be asked to sign in again.

***

### Tips & Best Practices

* **One connection covers every org you belong to.** The assistant defaults to the org you picked when you signed in, but it can hop between any of your other orgs mid-chat—just ask, e.g. "which Maker orgs am I in?" and then "switch to the marketing team org". The switch lasts for the rest of that session.
* **You can have more than one assistant connected at the same time.** Use Claude for design work and ChatGPT for ops if that's how your brain works.
* **Open the live preview side-by-side with your chat.** Pop your project's preview URL into a second window next to Claude (or on a second monitor). Every time your assistant edits the project, the preview refreshes automatically—you'll see the change land while you're still talking to the chat.
* **Pair it with Comments.** Open the preview, leave Comments on every spot you want changed, then ask your assistant "implement everything in my open Comments on this project". The assistant works through them one by one and you stay in the visual world the whole time.
* **You can still grab the visual editor for finishing touches.** Some things are faster by hand—nudging a margin, picking a colour, swapping a single image. Switch to the Maker preview, make the small tweak in the visual editor, then go back to the chat for the next big move. Best of both worlds.

***

### Plan & Pricing

The AI-assistants connection is available on the **Max** plan and above. On lower tiers you'll still see the setup page, but the connector cards open an upgrade prompt instead of installing.

Generation runs on your AI assistant's own subscription—Maker credits are not spent on the assistant's thinking, drafting, or tool-calling itself.

**Two exceptions** can still cost Maker credits: **image generation** and **video generation**. These run on Maker because they're not something a chat window can do alone. Whenever your assistant is about to call one of those tools, it shows you the exact credit cost first and asks you to confirm—nothing kicks off until you say yes.

***

### FAQ

<details>

<summary>Does this use my Maker credits?</summary>

Not for the assistant's thinking, drafting, or tool-calling—all of that runs on your Claude Pro / ChatGPT Plus / Cursor subscription.

Image generation and video generation still cost Maker credits because those don't run in the chat—they run on Maker. Your assistant always shows you the exact credit price first and waits for you to confirm before kicking either one off, so nothing surprises you.

</details>

<details>

<summary>Which plan do I need?</summary>

The connection is available on the **Max** plan and above. Free, Pro, and Teams users can see the setup page and learn about the feature, but installing a connector requires Max. If your organization downgrades out of Max, any existing connections stop working until you upgrade again.

</details>

<details>

<summary>Is this secure?</summary>

Yes. The connection uses standard OAuth sign-in—Maker never sees your AI assistant's password, and your assistant never sees a Maker API key. Every request your assistant makes is scoped to your account and to the specific tools you've granted. You can revoke a connection at any time from **Settings > AI assistants > Server details**.

</details>

<details>

<summary>What is MCP? I've seen the term in my assistant's settings.</summary>

MCP stands for Model Context Protocol—an open standard for letting AI assistants talk to outside tools and apps. Claude, ChatGPT, Codex, and Claude Code all support it, which is why the same Maker connection works in all of them. You don't need to learn anything about it to use Maker from your assistant; it's just the plumbing underneath.

</details>

<details>

<summary>What can my assistant actually do once it's connected?</summary>

Roughly anything you can do by clicking around inside Maker: list and open projects, edit copy, swap images, generate new sections, screenshot the preview, push changes live, set up A/B tests, create variants, pull from your skill catalog, and read your project insights. If a teammate adds a new skill to your catalog, your assistant can use it the next time you chat—no extra setup needed.

The single best way to get the definitive list is to ask the assistant itself: "What can you do with Maker?" It sees the full toolkit (which we keep adding to), and its answer will always be more current than this page.

</details>

<details>

<summary>Can I limit what my assistant can do?</summary>

Yes, in two places. Inside the assistant (Claude, ChatGPT), you can toggle Maker tools on and off per conversation using the **Tools** picker—useful when you want a chat to only talk about ideas, not actually publish anything. Inside Maker, organization admins control who has the **Max** plan access in the first place; viewers and members without write access still can't push changes through Maker, no matter what they ask the assistant to do.

</details>

<details>

<summary>How do I disconnect an assistant?</summary>

Open **Settings > AI assistants > Server details**. Each connected assistant has a **Revoke** button—click it and that assistant loses access immediately. To reconnect later, follow the same setup steps again.

</details>

<details>

<summary>Why is the AI-assistants tab showing a "MAX" badge for me?</summary>

Your organization isn't on the Max plan, so the connection itself is locked. You can still browse the setup page and see what the feature does—but clicking a connector card will prompt you to upgrade. Max-plan organizations see a "NEW" badge instead.

</details>

<details>

<summary>Can my whole team share one connection?</summary>

No—each teammate sets up their own connection to their own AI assistant. That way every chat runs against the right person's identity inside Maker, and revoking your access doesn't affect anyone else.

</details>

<details>

<summary>Does it work with Cursor / Cline / another AI tool I use?</summary>

Most modern AI assistants support custom connectors, so chances are yes. Try pasting the Maker server URL (from **Settings > AI assistants > Server details**) into your tool's connector or integration screen. The setup steps in Maker cover the four assistants we've tested end-to-end; others usually follow the same pattern.

</details>


# Prompt Basics

Use these guidelines to craft clear, actionable prompts that help Maker deliver exactly what you need.

{% hint style="info" %}
For live examples and templates, see [Prompt Examples & Usecases](/prompting/prompt-basics/prompt-examples-and-use-cases).
{% endhint %}

***

### 1. Context & Objectives

{% stepper %}
{% step %}
**Define Audience & Goals**

* Describe the target persona (e.g. “tech-savvy professionals,” “young creatives”).
* State the primary goal (e.g. “showcase portfolio,” “drive sign-ups,” “educate users”).
* Optionally include success metrics (“increase click-through by 20%”).
  {% endstep %}

{% step %}
**Align on Brand & Tone**

* Describe the target persona (e.g. “tech-savvy professionals,” “young creatives”).
* State the primary goal (e.g. “showcase portfolio,” “drive sign-ups,” “educate users”).
* Optionally include success metrics (“increase click-through by 20%”).
  {% endstep %}

{% step %}
**Provide Examples & Inspiration**

* Link to existing sites, components, or mood boards.
* Share screenshots or describe visual references (“in the style of X”).
* Outline layouts or flows you admire (e.g. “two-column hero with side nav”).
  {% endstep %}
  {% endstepper %}

***

### 2. Design & Technical Specifications

{% stepper %}
{% step %}
**Be Precise in Layout & Style**

* Specify structural elements (header, footer, sidebar, grid).
* Call out spacing, typography, color usage.
  {% endstep %}

{% step %}
**Detail Interactions & Behavior**

* Define hover, focus, or animation effects.
* Include links / URLs to which the elements or cards should be linked to (e.g. “link the Banner CTA “Shop Now” to `[URL]`”).
  {% endstep %}

{% step %}
**Outline Content & Data Needs**

* Provide placeholder text, sample images, or data schemas.
* Specify pagination, filtering, or sorting requirements.
  {% endstep %}

{% step %}
**Set Technical & Performance Constraints**

* Define responsiveness targets (mobile, tablet, desktop breakpoints).
  {% endstep %}
  {% endstepper %}

***

### 3. Workflow, Iteration & Feedback

{% stepper %}
{% step %}
**Encourage Creative Latitude**

* Allow the AI to suggest variations (“feel free to propose alternative layouts”).
* Use open-ended prompts for brainstorming (“generate three hero concepts”).
  {% endstep %}

{% step %}
**Structure Revision Cycles**

* After initial output, ask targeted follow-ups (“reduce header height by 20px”).
* Use **Select to Edit** for pinpoint changes on specific elements.
* Save iterations as Remix or duplicate projects to track progress.
  {% endstep %}

{% step %}
**Clarify When to Ask Questions**

* Prompt the AI to request missing details (“What’s the primary call-to-action?”).
* Provide additional context only when needed to avoid lengthy back-and-forth.
  {% endstep %}
  {% endstepper %}

***

### 4. Advanced Tips

* **Chain Prompts**: break complex tasks into sequenced prompts (scaffold → style → validate → document).
* **Leverage Brand Styles**: prefix prompts with `[YourBrandStyle]` to auto-apply theme settings.
* **Use Examples Inline**: include screenshot references to guide output.
* **Control Scope**: specify “only modify the banner”

***

By combining clear context, precise specs, and structured iteration, you’ll streamline your Maker workflow and achieve on-target results every time.

***


# Prompt Examples & Use Cases

This page contains a curated collection of practical use cases for what you can create using Maker's AI-powered frontend tools.

Each card below includes a detailed prompt you can use as a starting point to generate powerful, responsive, and on-brand components and layouts. These are grouped into four categories: **Pages, Sections, Components, and Animations & Effects**.

**Use them to:**

* Get inspired when starting a new build
* Learn prompt structure best practices
* Speed up prototyping and iteration
* Understand how to break down use cases into UI logic

{% hint style="info" %}
💡 **Heads up!**

AI output can vary — results may not always be perfect or follow your intentions directly. The prompts listed here are **just examples** to get you started. For best results, iterate, test, and refine using your brand tokens and structure.
{% endhint %}

***

{% hint style="success" %}
You can **click the prompt box** to reveal a convenient copy button — so you can quickly paste and tweak the examples inside Maker.
{% endhint %}

{% tabs fullWidth="false" %}
{% tab title="Pages" %}

<table data-card-size="large" data-column-title-hidden data-view="cards" data-full-width="false"><thead><tr><th>Usecase</th><th>Prompt Example</th></tr></thead><tbody><tr><td><strong>Enhanced PDP</strong></td><td><pre><code>Design a high-conversion product detail page (PDP) for a fashion brand.
- Audience: DTC shoppers looking for premium garments.
- Primary goal: Increase add-to-cart rate by showcasing trust and product clarity.
- Layout: Full-width hero banner with high-res image, product name, and CTA above the fold.
- Product Gallery: Lightbox-enabled, swipeable on mobile.
- Comparison: Grid or carousel with similar variants and price differences.
- Trust Bar: Include return policy, shipping info, and secure checkout icons.
- Review Block: Add collapsible customer reviews with star highlights.
- Responsive: Optimized for mobile-first experience, scaling up to desktop.
- Style: Follow {{theme.tokens.style}} with emphasis on editorial clarity.
</code></pre></td></tr><tr><td><strong>SaaS Landing</strong></td><td><pre><code>Create a responsive SaaS landing page for a product launch.
- Audience: Founders and growth marketers exploring SaaS tools.
- Goal: Generate free trial signups and increase feature engagement.
- Hero: Full-width hero with value prop headline, CTA, and supporting graphic.
- Features: Icon blocks with short benefit copy (3 to 6 features).
- Testimonials: Quote carousel with logos of recognizable clients.
- CTA: Sticky or repeated CTAs across key scroll points.
- Pricing: Tiered plan layout with toggle (monthly/yearly).
- Footer: Include trust logos, terms, and additional CTA.
- Responsive: Fluid stacking layout for mobile and tablet.
- Style: Use {{theme.tokens.style}}, with a focus on clarity and conversion.
</code></pre></td></tr><tr><td><strong>Collection / Lookbook</strong></td><td><pre data-overflow="wrap"><code>Design a collection landing page or seasonal lookbook.
- Audience: Fashion-forward users discovering seasonal items.
- Goal: Drive product discovery and increase time on site.
- Layout: Grid or carousel with auto masonry for image flow.
- Hero: Include a styled collection intro section with headline + visual.
- Products: Hover-on-image reveals style name and price.
- Filtering: Optional collection tags or category chips.
- Interaction: Smooth scroll or snap to sections for curated drops.
- Responsive: Prioritize thumb-based navigation for mobile.
- Style: Align with {{theme.tokens.style}} using bold, modern visuals.
</code></pre></td></tr><tr><td><strong>Pricing &#x26; Plans</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Create a clear pricing page that helps users compare and decide.
- Audience: New and existing SaaS users evaluating plans.
- Goal: Increase plan upgrades and reduce confusion.
- Layout: 3 or 4 column grid with toggles for Monthly/Annual pricing.
- Highlights: Use ribbons or badges to mark 'Most Popular'.
- Features: Each plan lists features in a consistent format.
- CTA: Button beneath each plan with consistent styling.
- Responsive: Columns stack into cards on mobile.
- Style: Follow {{theme.tokens.style}} with clear visual hierarchy.
</code></pre></td></tr><tr><td><strong>Event Page + Calendar</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Design an event landing page with RSVP capabilities.
- Audience: People interested in online/offline events.
- Goal: Maximize RSVP and calendar syncs.
- Hero: Event title, date, and hero image or video.
- Details: Event description, agenda, location or stream info.
- RSVP: Form with confirmation state and calendar add option.
- Countdown: Optional timer component if time-sensitive.
- Responsive: Must perform cleanly on mobile.
- Style: Branded look using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>FAQ with Search Bar</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Design a searchable FAQ section to guide users.
- Audience: New or confused users needing product or service guidance.
- Goal: Reduce support load and bounce rate by providing quick answers.
- Layout: Full-width section with centered search bar and grouped questions.
- Interaction: Search input filters matching answers in real-time.
- Answers: Accordion-style expandable blocks organized by category.
- Tags: Optional labels or filters for better organization.
- Responsive: Fully collapsible for mobile views.
- Style: Use {{theme.tokens.style}} with clean readability and clear spacing.
</code></pre></td></tr><tr><td><strong>Step-by-Step Wizard</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Create a step-by-step guided wizard interface.
- Audience: Users performing a setup, form fill, or configuration process.
- Goal: Improve completion rate through guided progress.
- Layout: Linear or segmented progress bar with numbered steps.
- Content: Each step includes question, field, or action with tooltip if needed.
- Transitions: Buttons to go back/next with validation checks.
- Visuals: Use illustrations or icons where possible for clarity.
- Responsive: Mobile-friendly stacked card flow.
- Style: {{theme.tokens.style}}, intuitive and smooth step flow.
</code></pre></td></tr><tr><td><strong>Survey &#x26; Feedback Form</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Design a feedback or survey form interface.
- Audience: Users post-purchase or after interaction with feature.
- Goal: Collect sentiment and actionable data to improve experience.
- Layout: One-column form with clear spacing and optional sections.
- Inputs: Star ratings, multiple-choice, open text, and NPS.
- CTA: Submit button with success confirmation.
- Conditional Logic: Show/hide follow-up fields based on answers.
- Responsive: Thumb-friendly tap targets and clean spacing.
- Style: Apply {{theme.tokens.style}}, user-friendly and non-intrusive.
</code></pre></td></tr><tr><td><strong>Blog Post</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Create a structured blog post layout.
- Audience: Users consuming thought leadership or SEO-driven content.
- Goal: Increase dwell time and shareability of the content.
- Layout: Featured image, headline, byline, publish date, and tags.
- Body: Rich text formatting with subheads, quotes, and embedded media.
- Meta: Estimated reading time, author bio snippet, share buttons.
- Navigation: Related posts and breadcrumbs below content.
- Responsive: Text line length optimized for readability on all screens.
- Style: Use {{theme.tokens.style}} with elegant editorial tone.
</code></pre></td></tr><tr><td><strong>Timeline / About Us</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Design an animated timeline for About page.
- Audience: Visitors evaluating credibility or culture of the company.
- Goal: Convey story and key milestones with visual clarity.
- Layout: Vertical or horizontal scroll with time anchors and image pairings.
- Content: Each item includes date, title, description, optional media.
- Animation: Fade-in or slide-in as user scrolls.
- Hero: Optional mission statement or founder intro at the top.
- Responsive: Scroll-pinned behavior on mobile.
- Style: Clean and legible, following {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Showcase Page</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Create a showcase-style project or case study layout.
- Audience: Leads or customers evaluating the brand’s capability.
- Goal: Highlight results and creative approach.
- Layout: Hero with summary, followed by sections: goals, process, results.
- Media: Full-width images, sliders or embedded video.
- Details: Metrics or testimonials at bottom.
- Responsive: Layout adapts for long scrolls and swipeable elements.
- Style: Modern, clear layout using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Location Page with Map</strong></td><td><pre class="language-txt" data-overflow="wrap"><code class="lang-txt">Design a location or store finder page.
- Audience: Users planning a visit to store, studio, or event space.
- Goal: Help users easily find and access physical locations.
- Hero: Address and brand image.
- Map: Embedded map (Google Maps or Mapbox) with marker and hover info.
- Details: Address, phone, hours, parking, and ‘Get directions’ CTA.
- Optional: Region selector or multiple location listings.
- Responsive: Scroll-pinned map or collapsed address stack on mobile.
- Style: Practical and polished using {{theme.tokens.style}}.
</code></pre><p></p></td></tr></tbody></table>
{% endtab %}

{% tab title="Sections" %}

<table data-card-size="large" data-column-title-hidden data-view="cards"><thead><tr><th>Usecase</th><th>Prompt Example</th></tr></thead><tbody><tr><td><strong>Hero Sections</strong></td><td><pre><code>Create a dynamic hero section for a landing or homepage.
- Audience: First-time visitors or return users needing quick context.
- Goal: Communicate value and encourage immediate action (e.g., signup or scroll).
- Layout: Full-width block with centered or side-aligned headline, subtitle, and CTA.
- Media: Optional image, video, or animation background.
- CTA: Single primary button with optional secondary link.
- Interaction: Text fade-in, scroll indicator, or countdown timer.
- Responsive: Mobile layout stacks elements vertically with centered CTA.
- Style: Follow {{theme.tokens.style}}, striking and accessible.
</code></pre></td></tr><tr><td><strong>Social Proof / Testimonials</strong></td><td><pre><code>Add a social proof block using testimonials or brand logos.
- Audience: Shoppers or leads assessing product or service trustworthiness.
- Goal: Reinforce credibility through visual or quote-based proof.
- Layout: Carousel or grid with quotes, star ratings, and customer photos.
- Logos: Optionally include partner or client logo bar above or below.
- Highlight: Use emphasized keywords or animated stars.
- Responsive: Stack logos or testimonials appropriately on mobile.
- Style: Clean and authentic tone using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Before &#x26; After Compare</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a draggable before-and-after comparison slider.
- Audience: Users needing proof of transformation (e.g., design, beauty, fitness).
- Goal: Visually demonstrate improvements or outcomes.
- Layout: Side-by-side image slider with draggable control.
- Labels: Add optional 'Before' and 'After' tags or icons.
- Context: Short caption or overlay explaining change.
- Responsive: Full-width interaction that remains intuitive on touch devices.
- Style: Polished layout that emphasizes contrast, using {{theme.tokens.style}}.

</code></pre></td></tr><tr><td><strong>Benefit Grids</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a responsive grid layout to highlight benefits.

* Audience: Shoppers or leads scanning for product value.
* Goal: Provide fast, visual access to key differentiators.
* Layout: 2–4 column responsive grid with icon + title + short text.
* Optionally: Use light background sections to alternate rhythm.
* Icons: Branded SVGs or theme-matched icons.
* Responsive: Stack to single column on mobile.
* Style: Clean, modular blocks following {{theme.tokens.style}}.

</code></pre></td></tr><tr><td><strong>Interactive FAQ w/ Search Bar</strong></td><td><pre class="language-txt"><code class="lang-txt">Design a smart FAQ section with live search.

* Audience: Visitors who need self-service troubleshooting or guidance.
* Goal: Increase answer discovery and reduce support load.
* Search: Keyword input with real-time filtering of answers.
* Accordion: Expand/collapse grouped questions by topic.
* Highlighting: Auto-focus or highlight matched terms.
* Tags: Category chips for quick filtering.
* Responsive: Optimized touch targets and reduced scroll friction.
* Style: Support-focused and highly legible using {{theme.tokens.style}}.

</code></pre></td></tr><tr><td><strong>Masonry Gallery</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a masonry-style image or video gallery.

* Audience: Users visually exploring creative content or inspiration.
* Goal: Showcase media in a natural, engaging flow.
* Layout: Masonry or Pinterest-style grid with auto-fit columns.
* Media: Allow mix of image and video with hover state or play button.
* Overlay: Optional titles, tags, or lightbox triggers on hover.
* Pagination: Infinite scroll or load more button.
* Responsive: Adaptive column count based on device width.
* Style: Crisp, minimal aesthetic aligned with {{theme.tokens.style}}.

</code></pre></td></tr><tr><td><strong>Comparison Tables</strong></td><td><pre class="language-txt"><code class="lang-txt">Design a side-by-side comparison table for products or plans.

* Audience: Decision-stage users comparing options.
* Goal: Make it easy to evaluate differences and choose the right option.
* Layout: Table with columns for each product/plan, rows for features.
* Highlight: Emphasize most popular or recommended option.
* Features: Use checkmarks, tooltips, or icons for clarity.
* Responsive: Transform table into stacked cards or scrollable grid on mobile.
* Style: Structured and easy to scan using {{theme.tokens.style}}. </code></pre></td></tr><tr><td><strong>Feature Accordions</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a collapsible accordion layout for feature details.
* Audience: Users reviewing feature explanations or technical info.
* Goal: Make content easy to explore without overwhelming the layout.
* Layout: Stacked vertical accordions with headers and expandable content.
* Interaction: Smooth open/close animation with indicator icons.
* Use case: Ideal for feature sets, product specs, or FAQs.
* Responsive: Full-width and tap-friendly for mobile.
* Style: Structured clarity using {{theme.tokens.style}}. </code></pre></td></tr><tr><td><strong>Autoplay Video Sections</strong></td><td><pre class="language-txt"><code class="lang-txt">Design a full-width section with autoplay video.
* Audience: Emotion-driven users exploring brand/product story.
* Goal: Tell a story or demonstrate value without relying on text.
* Layout: Background or inline video with overlay headline and subtext.
* Interaction: Mute by default, loop on scroll; autoplay must be smooth.
* CTA: Optional button placed over or below video.
* Responsive: Fallback image on mobile or reduced motion.
* Style: Immersive and branded, using {{theme.tokens.style}}. </code></pre></td></tr><tr><td><strong>Blog Highlights Slider</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a horizontal blog highlights slider.
* Audience: Visitors scanning for updates, inspiration, or stories.
* Goal: Increase blog traffic and improve time on site.
* Layout: Horizontal card slider with thumbnail, title, tag, and publish date.
* Navigation: Scroll or swipe with visible arrows or snap behavior.
* Cards: Clickable with brief summary or hover animation.
* Responsive: Scrollable on touch, stacked fallback if needed.
* Style: Visually engaging and editorial using {{theme.tokens.style}}. </code></pre></td></tr><tr><td><strong>Sticky Elements</strong></td><td><pre class="language-txt"><code class="lang-txt">Add sticky UI elements to improve navigation and usability.
* Audience: Users reading long pages or completing complex flows.
* Goal: Maintain visibility of key CTAs, headers, or tools.
* Use case: Sticky navbars, add-to-cart buttons, section indicators.
* Behavior: Stick at top or bottom on scroll with smooth animation.
* Breakpoints: Define stickiness for desktop and/or mobile as needed.
* Responsive: Ensure overlap with content is avoided.
* Style: Lightweight and non-intrusive using {{theme.tokens.style}}. </code></pre></td></tr><tr><td><strong>Interactive Feature Tabs</strong></td><td><pre class="language-txt"><code class="lang-txt">Create a tabbed interface to display product features or comparisons.
* Audience: Users seeking interactive demos or segmented info.
* Goal: Improve comprehension of complex features or variations.
* Layout: Horizontal tab bar with icon/label combo.
* Content: Swap copy, media, or embedded components on selection.
* Animation: Smooth fade or slide transitions between tabs.
* Responsive: Collapse tabs into accordion or scrollable nav.
* Style: Highly interactive but minimal, using {{theme.tokens.style}}. </code></pre></td></tr></tbody></table>
  {% endtab %}

{% tab title="Components" %}

<table data-card-size="large" data-column-title-hidden data-view="cards"><thead><tr><th>Usecase</th><th>Prompt Example</th></tr></thead><tbody><tr><td><strong>Carousel / Sliders</strong></td><td><pre><code>Create a responsive carousel or slider for showcasing content.
- Audience: Visitors navigating image galleries, testimonials, or featured products.
- Goal: Allow compact and interactive display of multiple items.
- Layout: Horizontal slider with image, label, and optional CTA.
- Navigation: Swipe gestures, arrows, or dot indicators.
- Content: Each slide may include text, rating, or clickable links.
- Responsive: Touch-optimized interaction on mobile; keyboard accessible on desktop.
- Style: Smooth transitions, consistent spacing, using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Tabs Switcher</strong></td><td><pre><code>Add a tab switcher for toggling between content blocks.
- Audience: Users comparing data, specs, or browsing help topics.
- Goal: Reduce scroll fatigue and group content logically.
- Layout: Horizontal tab row above switchable content area.
- State: Active tab highlighted with animation or visual cue.
- Interaction: Smooth transition between tabs with no page reload.
- Responsive: Stack into vertical list or scrollable tab bar on mobile.
- Style: Minimal, intuitive interface aligned with {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Lightbox Modals</strong></td><td><pre><code>Implement a lightbox modal system for images, videos, or embedded elements.
- Audience: Users engaging with product images, galleries, or feature previews.
- Goal: Provide immersive experience for focused content.
- Trigger: Clickable thumbnail, CTA, or icon to open modal.
- Layout: Centered overlay with darkened background and close button.
- Features: Esc key to close, optional zoom controls or fullscreen toggle.
- Responsive: Scales to viewport with swipe dismissal on mobile.
- Style: Elegant and non-distracting using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Tooltip Hints</strong></td><td><pre><code>Add contextual tooltips for terms or icons in the interface.
- Audience: Users needing extra clarity without leaving the page.
- Goal: Explain technical terms or icons in a minimal, helpful way.
- Trigger: Hover or tap on icons or underlined keywords.
- Placement: Top or side depending on screen edge.
- Content: One or two short lines of text only.
- Responsive: Touch-friendly delay or tap-to-close behavior.
- Style: Clean, minimal, theme-consistent using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Dark Mode Toggle</strong></td><td><pre><code>Implement a dark mode toggle with saved preference state.
- Audience: Users on low-light environments or with visual comfort preferences.
- Goal: Improve accessibility and personalization.
- Position: Top-right or in user settings panel.
- Behavior: Instant theme swap across all tokens (background, text, buttons).
- State: Save preference to local storage or session.
- Responsive: Ensure consistent theme behavior across breakpoints.
- Style: Use inverted {{theme.tokens.style}} definitions for dark mode.
</code></pre></td></tr><tr><td><strong>Multilingual Switcher</strong></td><td><pre><code>Add a multilingual toggle to switch between languages.
- Audience: Global users or regions with multiple language needs.
- Goal: Let users toggle language without leaving the current page.
- Layout: Simple dropdown or flag icon group in header.
- Behavior: Update copy across entire interface (texts, labels, CTAs).
- Accessibility: Announce changes and use ARIA roles where needed.
- Responsive: Compact dropdown or icon-only toggle on mobile.
- Style: Maintain layout stability using {{theme.tokens.style}} regardless of language.
</code></pre></td></tr><tr><td><strong>Marquee Text</strong></td><td><pre><code>Implement a horizontally scrolling marquee text component.
- Audience: Visitors on landing pages or promo sections.
- Goal: Highlight key phrases, categories, or announcements.
- Content: Short sentence or set of tags repeated in a loop.
- Speed: Adjustable scroll speed with optional hover pause.
- Layout: Full-width or contained block with typographic emphasis.
- Responsive: Adapts font size and scroll speed on mobile.
- Style: Bold, high-contrast typography using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Countdown Timers</strong></td><td><pre><code>Add a countdown timer to indicate urgency for a campaign or event.
- Audience: Visitors viewing a limited-time deal or registration page.
- Goal: Increase conversions by emphasizing time sensitivity.
- Layout: Days, hours, minutes, seconds in a horizontal row or stacked.
- End Behavior: Display message or CTA once timer completes.
- Placement: Inline with CTA or in a sticky banner.
- Responsive: Auto-reflow and rescale layout on small screens.
- Style: Clear, bold numbers with branded accents from {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>FABs (Floating Action Buttons)</strong></td><td><pre><code>Create a floating action button (FAB) for quick interaction.
- Audience: Mobile users or UIs needing persistent actions.
- Goal: Improve accessibility to high-priority tools like Chat, Buy, or Help.
- Placement: Bottom-right or bottom-center with z-index elevation.
- Behavior: Expand to show multiple actions on click (optional).
- Icon: Single icon or + icon with motion hint.
- Responsive: Tappable area respects safe zones on mobile.
- Style: Circular, clean visual hierarchy aligned with {{theme.tokens.style}}.
</code></pre></td></tr></tbody></table>
{% endtab %}

{% tab title="Animation & Effects" %}

<table data-card-size="large" data-column-title-hidden data-view="cards"><thead><tr><th>Usecases</th><th>Prompt Examples</th></tr></thead><tbody><tr><td><strong>Scroll-Triggered Fade</strong></td><td><pre><code>Add scroll-triggered fade-in animation to elements.
- Audience: Users reading long-form or storytelling content.
- Goal: Improve visual rhythm and focus without overwhelming the user.
- Target: Apply to sections, cards, images, or text blocks.
- Behavior: Elements fade in as they enter viewport (once or repeatable).
- Delay: Optional staggered timing per block.
- Responsive: Timing and distances adjust for mobile interaction.
- Style: Subtle and smooth, using {{theme.tokens.style}} for animation timing.
</code></pre></td></tr><tr><td><strong>Parallax Speed Layers</strong></td><td><pre><code>Create a parallax effect with multiple speed layers.
- Audience: Visitors on branded storytelling or product feature pages.
- Goal: Add dimensionality and elegance through scroll interaction.
- Layers: Background, midground, foreground content with varying scroll speeds.
- Target: Images, illustrations, or abstract shapes.
- Interaction: Scroll-controlled, non-distracting speed differential.
- Responsive: Disable or simplify for mobile to preserve performance.
- Style: Modern, atmospheric implementation aligned with {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Staggered Hero Entrance</strong></td><td><pre><code>Apply staggered entrance animations to hero section elements.
- Audience: First-time visitors arriving on marketing or campaign pages.
- Goal: Draw attention to key message hierarchy with motion.
- Targets: Title, subtitle, CTA, and media all enter sequentially.
- Timing: Use delays between each element to build rhythm.
- Behavior: Triggered on initial page load, not repeated on scroll.
- Responsive: All animations should feel fast and fluid on mobile.
- Style: Timed transitions in sync with {{theme.tokens.style}} motion tokens.
</code></pre></td></tr><tr><td><strong>Infinite Marquee Text</strong></td><td><pre><code>Implement an infinite marquee effect for horizontally scrolling text.
- Audience: Users browsing hero sections or campaign banners.
- Goal: Add motion emphasis to key slogans, tags, or categories.
- Behavior: Text scrolls endlessly in one direction (optional hover pause).
- Layout: Looping in-line element or banner strip with overflow hidden.
- Speed: Adjustable and consistent across devices.
- Responsive: Scales typography and padding for mobile.
- Style: Bold typography and seamless looping using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Animated Text</strong></td><td><pre><code>Apply animated text styling to important headlines or callouts.
- Audience: Readers on marketing sections or stat callouts.
- Goal: Enhance message hierarchy and visual interest.
- Animation Types: Typewriter, reveal, blur-in, or wave effect.
- Timing: Delayed entry on scroll or load.
- Use case: Section headers, stats, or intro lines.
- Responsive: Animation should feel fast and intentional on mobile.
- Style: On-brand and legible motion synced with {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Number Count-Up</strong></td><td><pre><code>Add a number count-up animation to stat blocks or KPI bands.
- Audience: Visitors reviewing social proof, revenue, or growth numbers.
- Goal: Create a sense of motion and legitimacy to key data.
- Behavior: Animate from 0 to value on scroll into view.
- Format: Thousands separator, optional prefix/suffix (e.g. $, %).
- Speed: 1–2 seconds, based on number size.
- Responsive: Size and alignment adapt to smaller screens.
- Style: Visually punchy and thematically bold using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Floating Elements</strong></td><td><pre><code>Add slow-moving floating elements to the background or layout.
- Audience: Users on storytelling pages or visual-first sections.
- Goal: Enhance visual richness without distracting from core content.
- Behavior: Slow, continuous movement along X/Y axis or float loop.
- Use case: Icons, shapes, or brand motifs subtly animating in background.
- Performance: Pause or reduce motion on low-power/mobile devices.
- Layering: Ensure elements remain behind interactive content.
- Style: Light, ambient use of {{theme.tokens.style}} motion patterns.
</code></pre></td></tr><tr><td><strong>Flip Card on Click</strong></td><td><pre><code>Create a card that flips on click or tap to reveal more information.
- Audience: Visitors browsing features, pricing, or product details.
- Goal: Allow compact display of dual-sided content (e.g., question/answer, front/back).
- Animation: 3D rotation effect with smooth easing.
- Content: Front includes teaser (icon/title); back includes full description or CTA.
- Interaction: Tap/click to toggle; esc or click outside to reset optional.
- Responsive: Touch-friendly, stacking behavior on mobile.
- Style: Branded color and elevation, using {{theme.tokens.style}}.
</code></pre></td></tr><tr><td><strong>Viewport Progress Bar</strong></td><td><pre><code>Add a viewport progress indicator bar at the top of the screen.
- Audience: Users navigating long-form content or scrollable sections.
- Goal: Improve content flow awareness and reduce bounce.
- Position: Fixed top (or optional left side) bar.
- Behavior: Fills as user scrolls through the page.
- Style: Thin, unobtrusive bar with motion easing based on {{theme.tokens.style}}.
- Responsive: Width-based and compatible with mobile Safari/Chrome.
- Accessibility: ARIA label and focus visibility respected.
</code></pre></td></tr></tbody></table>
{% endtab %}
{% endtabs %}

{% columns %}
{% column width="50%" %}

{% endcolumn %}

{% column %}

{% endcolumn %}
{% endcolumns %}


# Debugging with Prompts

Use focused prompts to troubleshoot and fix issues in your project. Maker understands error messages, context, and best practices to help streamline debugging.

***

{% stepper %}
{% step %}

### Clearly Describe the Issue

Be specific about what’s going wrong.
{% endstep %}

{% step %}

### Share Context

Add a screenshot or image of the issue, or paste the exact error message into the prompt box.
{% endstep %}

{% step %}

### Ask for a Targeted Fix

Request a specific solution or explanation.
{% endstep %}

{% step %}

### Follow Up as Needed

Continue the thread with updated prompts if new errors appear.
{% endstep %}
{% endstepper %}

***

### Tips for Effective Debugging

* Focus on one issue per prompt.
* Share the full, unedited error message.
* Test the fix, then provide any new errors to continue debugging.

***


# From idea to Live

A step-by-step workflow for turning your concept into a fully deployed Maker project.

***

### 1. Define Your Project Concept

* **Identify** what you want to create.
* **List key features** you want to display.

***

### 2. Prototype in a design tool (Optional)

1. If you are using Figma, see [details here for Figma > Maker.](/features/figma)
2. If you are using any other deisgn tool, export the layout as an image to add in Maker in step 3.

***

### 3. Kick-start a Project in Maker

* Visit ai.maker.co and click **New Chat / New Project**.
* Select a **Brand Style** (or “No Brand Style”).
* Enter a prompt like:

```
Generate a hero banner with two CTAs
```

* Have a reference layout? Attach it now—image, URL, Figma file, whatever you prefer.

***

### 4. Build & Iterate

* **Ask follow-up prompts** to refine components:
* **Preview changes live** in the right-hand pane across breakpoints.

***

### 5. Test & Collaborate

* **Share the preview URL** with teammates or stakeholders.
* Gather feedback via comments or your team’s chat.
* Use **Project Remix** to create variants without affecting your main project.

***

### 6. Publish & Host

* When you’re ready, click **Publish** to generate your public URL or make it private.
* For your own domain, follow the steps in [Custom Domain.](/features/custom-domain)
* Monitor performance, and roll back via **History** if needed.

***

### 7. Share

* Share your finished project in **Featured Projects** to inspire the community.

### &#x20;Need a helping hand?

Check out our "[Inspiration](https://www.maker.co/use-cases)" page. Inspiration is one of the fastest ways to start building in Maker. It gives you curated use cases with ready-made prompts, so you don't have to figure everything out from scratch.

Instead of staring at a blank page, you can browse practical use cases - like hero sections, landing pages, or content blocks — pick one, customize it, and generate instantly.

{% embed url="<https://vimeo.com/1158756618?fe=sh&fl=pl>" %}

***

By following this path—from concept through design, code, testing, and deployment—you’ll streamline your Maker workflow and go live with confidence.

***


# Best Practices

Follow these guidelines to get the most accurate, consistent, and on-brand results from Maker.

***

### How can I get the most out of Maker?

* Start with **clear, concise prompts**—describe exactly what you want (elements, layout, behavior).
* **Iterate quickly**: refine your prompt based on the AI’s response.

***

### How do I optimize my prompts for better results?

* **Provide context**: Include relevant details, examples, or guidelines to help Maker understand your intent and generate more accurate results.
* **Use lists** (bulleted/numbered) to ask for multiple items or steps. Breaking complex requests into smaller, manageable parts often yields more precise answers.
* **Scope your request**: specify sections or components to modify (e.g. “Only update button”).

***

### Can I use Maker for collaboration?

Currently, our tool is designed for one user at a time per active project. For collaborative efforts, we recommend coordinating access among team member and the following:

* **Share live preview URLs** with teammates for feedback.
* **Remix** a project to let others iterate on their own copy without affecting your main build.
* **Duplicate** projects to manage different versions.

***

### How can I integrate feedback to improve future outputs?

* **Review response r**egularly, review the tool’s responses and adjust your prompts based on what works.
* **Documenting** successful strategies can help create a reference for future interactions, leading to consistent improvements over time.
* **Adjust and re-run** prompts when requirements change or edge cases arise.

***

### Can Maker support multi-step workflows?

Yes—chain prompts in the same chat session. Use one prompt to scaffold, then follow up to add features, tweak styles, or handle errors without starting over.

***

### Where can I find additional resources and tips?

* **Documentation Portal**: in-depth guides and examples.
* **Community Forums**: share prompts, discover use cases, ask questions.
* [**Support & Contact**](/community/support-and-contact): live chat and email support for personalized assistance.

***


# Troubleshooting

Use this guide to resolve common issues you may encounter while using Maker.

***

### General Editor Issues

<details>

<summary><strong>Editor won’t load or shows a blank screen</strong></summary>

* Ensure you’re using the latest version of Chrome, Firefox, or Safari.
* Clear your browser cache or try an incognito/private window.
* Disable any browser extensions that might block scripts or cookies.

</details>

<details>

<summary><strong>Unsaved changes after a crash</strong></summary>

* Maker autosaves every few seconds—check the **History** tab to restore a recent snapshot.
* If the History panel is empty, re-open your project.

</details>

***

### Authentication & Access

<details>

<summary><strong>Majic/Access link isn’t arriving</strong></summary>

* Check your spam or junk folder.
* Ensure you entered the correct email address.
* Reachout to support via the built-in chat

</details>

<details>

<summary><strong>“Continue with Google” fails or loops</strong></summary>

* Enable third-party cookies or try a different browser profile.
* Log out of Google and log back in before retrying.

</details>

***

### Project Creation & Publishing

<details>

<summary><strong>Live preview not updating</strong></summary>

* Make a small edit or click **Regenerate** to trigger a save.
* Verify your network connection and reload the page if needed.

</details>

***

### Figma Import Problems

<details>

<summary><strong>Authorization modal never appears</strong></summary>

* Allow pop-ups and third-party cookies.
* Manually connect under **Settings → Integrations → Figma**.

</details>

<details>

<summary><strong>Frames don’t import</strong></summary>

* Use a direct frame share link (not the file link).
* Name artboards exactly **Desktop**, **Tablet**, **Mobile** for breakpoint detection.

</details>

***

### Brand Styles Glitches

<details>

<summary><strong>Selected theme not applied</strong></summary>

* Re-open the Brand Style dropdown before your prompt and re-select the style.
* If you’ve edited the style, click **Generate** again to rebuild the theme.

</details>

<details>

<summary><strong>Upload errors (file too large or wrong format)</strong></summary>

* Ensure images are PNG or JPEG and under 5 MB.
* Try resizing or converting the file.

</details>

***


# Forms

If a form is part of your project, here's everything you need to know to get it set up the right way.

***

### FAQs

<details>

<summary>Can I build a form in Maker?</summary>

Yes! You can build a form directly in Maker. What Maker doesn't do is store or process the submissions, so you'll need a plan for where those go once someone fills it out.

</details>

<details>

<summary>Where do form submissions go?</summary>

That part lives outside of Maker. Since we're not a form tool, storing submissions isn't something we handle on our end. You'll need to set up a database or backend solution to collect them, and then you can connect that directly in Maker.

</details>

<details>

<summary>Can Maker connect to my existing database?</summary>

A simpler option is to use a third-party form tool (like Typeform, Jotform, or Google Forms) and just embed it in Maker. That way, the form tool handles the submissions for you, and you still get it living inside your Maker experience.

</details>

<details>

<summary>What if I don't want to set up a database myself?</summary>

A simpler option is to use a third-party form tool (like Typeform, Jotform, or Google Forms) and just embed it in Maker. That way, the form tool handles the submissions for you, and you still get it living inside your Maker experience. When you're ready to embed, make sure you're copying the complete embed code from your form tool, which includes both the `div` tag and the `script` tag. Both are needed for the form to load and render correctly. It should look something like this:

html

```html
<div data-tf-live="01HXXXXXXXXXXXXXXXX"></div>
<script src="//embed.typeform.com/next/embed.js"></script>
```

</details>

<details>

<summary>Will I need my dev team for this?</summary>

Not necessarily. If you're comfortable with how form submission tools work, you may be able to handle it yourself. If you're using a third-party form tool that gives you an embed code, that's actually pretty straightforward to drop into Maker. Where it gets more involved is if you're connecting a custom database or setting up something more complex on the backend. In that case, having a dev help out would make things a lot easier.

</details>

***

***


# SEO

When Maker is embedded into your site, the content remains SEO-friendly because it loads within your existing domain. Since the pages sit inside your parent website, they benefit from your site's SEO authority and indexing.


# Adding Maker to your site

Below are step-by-step instructions for adding Maker’s embed scripts to several leading CMS platforms.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

#### CMS Platforms

[Squarespace](/tips-and-tricks/adding-maker-to-your-site/squarespace)

[Wix](/tips-and-tricks/adding-maker-to-your-site/wix)

[Webflow](/tips-and-tricks/adding-maker-to-your-site/webflow)

[WooCommerce (Wordpress)](/tips-and-tricks/adding-maker-to-your-site/woocommerce-wordpress)

[Shopify](/tips-and-tricks/adding-maker-to-your-site/shopify)

[BigCommerce](/tips-and-tricks/adding-maker-to-your-site/bigcommerce)

[Magento / Adobe Commerce](/tips-and-tricks/adding-maker-to-your-site/magento-adobe-commerce)

[HubSpot CMS (new)](/tips-and-tricks/adding-maker-to-your-site/hubspot-cms)

***

### How do I make my Maker content load faster?

Paste one small block of code into the page **head** and publish. Copy‑paste this (everything goes inside `<head>`)

```
<!-- Very top of <head>: warm up & preload -->
<link rel="dns-prefetch" href="//aicdn.maker.co">
<link rel="preconnect" href="https://aicdn.maker.co" crossorigin>
</script>
```

#### Where to paste this code on different platforms?

#### Squarespace (7.0/7.1)

* **Site‑wide:** **Settings → Advanced → Code Injection → Header** → paste the whole block → **Save** → **Publish**.
* **Single page:** Open the page → **Settings → Advanced → Header** → paste → **Save**.

> Requires a Business/Commerce plan for Code Injection.

#### Wix

* **Dashboard → Settings → Custom Code → Add Custom Code** → paste → **Place Code in:** *Head* → **All pages** (or select pages) → **Apply** → **Publish**.

#### Webflow

* **Project Settings → Custom Code → Head Code** → paste → **Save** → **Publish**.
* Per‑page: **Page Settings → Inside head tag** → paste → **Publish**.

#### WooCommerce (WordPress)

* Easiest: install **“Insert Headers and Footers” (WPCode)** plugin → **Code Snippets → Header** → paste → **Save**.
* Or theme edit: **Appearance → Theme File Editor → header.php** → paste inside `<head>` → **Update file**.

> Make sure caching/CDN is cleared (e.g., WP Rocket, Cloudflare).

#### Shopify (Online Store 2.0)

* **Online Store → Themes → Edit code → layout/theme.liquid** → find `<head>` → paste the block **just after `<head>`** → **Save** → **Preview/Publish**.

#### BigCommerce (Stencil)

* **Storefront → Themes → Advanced → Edit Theme Files** → open `templates/layout/base.html` (or the head partial, e.g., `templates/components/common/html-head.html`) → paste inside `<head>` → **Save** → **Preview/Publish**.

> If you prefer not to edit files, you can add only the `<script>` via **Storefront → Script Manager** (Location: *Head*). The three `<link>` tags usually require theme file edit.

#### Magento / Adobe Commerce (Magento 2)

* **Admin → Content → Design → Configuration** → choose your **Store View → Edit** → **HTML Head → Scripts and Style Sheets** → paste → **Save Configuration** → **Flush Cache**.

#### HubSpot CMS

* **Settings → Website → Pages → (choose domain) → Templates → Site header HTML** → paste → **Save** → **Publish**.
* Or edit your theme in **Design Manager** and add the block to the global header partial.

***


# Squarespace

Below are step-by-step instructions for adding Maker’s embed scripts to Squarespace

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### Squarespace

#### Embed on a single page

1. Edit the target page → hover and click **➕ Add Block**.
2. Select **Code**, set **HTML** mode.
3. Paste your Maker `<script>` → **Apply** → **Save**. [Squarespace Help](https://support.squarespace.com/hc/en-us/articles/205815928-Adding-custom-code-to-your-site?utm_source=chatgpt.com)

#### Site-wide load

1. **Settings → Advanced → Code Injection**.
2. Paste the script in **Header** (or **Footer**) field.
3. Click **Save**. It now runs on every page. [Squarespace Help](https://support.squarespace.com/hc/en-us/articles/205815908-Using-code-injection?utm_source=chatgpt.com)

<figure><img src="/files/S4XCWSa51EKP8axMglji" alt=""><figcaption></figcaption></figure>

***


# Wix

Below are step-by-step instructions for adding Maker’s embed scripts to Wix.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### Wix

#### Embed in a specific section

1. In the **Editor**, click **Add (+) → Embed → Embed HTML**.
2. Drag the frame where Maker should appear, then **Enter Code**.
3. Paste the script → **Update** → **Publish**. [Wix Support Center](https://support.wix.com/en/article/wix-editor-embedding-custom-code-on-your-site?utm_source=chatgpt.com)

#### Global or selected pages

1. From your **Dashboard**, go to **Settings → Custom Code**.
2. Click **+ Add Custom Code**.
3. Paste the script, name it, choose **All pages** or specific pages & location (Head / Body), then **Apply**. [Wix Support Center+1](https://support.wix.com/en/article/wix-editor-embedding-custom-code-on-your-site?utm_source=chatgpt.com)

<figure><img src="/files/Bj5M7xkibMxRL0C1ubRK" alt=""><figcaption></figcaption></figure>


# Webflow

Below are step-by-step instructions for adding Maker’s embed scripts to Webflow.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### Webflow

#### Exact spot in a design

1. Open **Designer → Add panel**.
2. Drag an **Embed** element onto the canvas.
3. Paste the Maker `<script>` → **Save & Close** → **Publish**. [help.webflow.com](https://help.webflow.com/hc/en-us/articles/33961332238611-Custom-code-embed?utm_source=chatgpt.com)

#### Template-wide or site-wide

*Page only:* **Pages panel → ⚙ Page Settings → Custom Code** → paste in **Head** or **Before \</body>** → **Save**.\
*Entire site:* **Site Settings → Custom Code** → paste in **Head** or **Footer** → **Publish**. [help.webflow.com](https://help.webflow.com/hc/en-us/articles/33961332238611-Custom-code-embed?utm_source=chatgpt.com)

<figure><img src="/files/4Mvdg7g6meRCpFHUtRIg" alt=""><figcaption></figcaption></figure>

***


# WooCommerce (Wordpress)

Below are step-by-step instructions for adding Maker’s embed scripts to WooCommerce (Wordpress).

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### WooCommerce (WordPress)

#### Single product or page

1. Edit the product/page in Gutenberg.
2. Click **➕ → Custom HTML** block.
3. Paste the script → **Preview** → **Update/Publish**.

#### Theme-wide

1. **Appearance → Editor** (or header-footer plugin).
2. Paste the script in `header.php`, `footer.php`, or a global template part → **Save**. *(Requires admin permissions.)*

<figure><img src="/files/9msQqmdoGNRp9jgJynqq" alt=""><figcaption></figcaption></figure>

***


# Shopify

Below are step-by-step instructions for adding Maker’s embed scripts to Shopify.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### Shopify

#### Exact placement on a template

1. **Online Store → Themes → Customize**.
2. Open the template (e.g., *Products*).
3. **Add block/section → Custom liquid** → paste the script → **Save**. [Shopify Help Center](https://help.shopify.com/en/manual/online-store/themes/theme-structure/sections-and-blocks?utm_source=chatgpt.com)

#### Site-wide

1. **… → Edit code**.
2. Open `layout/theme.liquid` (or the relevant template).
3. Paste the script before `</body>` → **Save**. [Shopify Help Center](https://help.shopify.com/en/manual/online-store/themes/theme-structure/sections-and-blocks?utm_source=chatgpt.com)

<figure><img src="/files/wZ485raPrnFb9dBAcQKA" alt=""><figcaption></figcaption></figure>

***


# BigCommerce

Below are step-by-step instructions for adding Maker’s embed scripts to BigCommerce.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

### BigCommerce

#### One page only

1. **Storefront → Web Pages** → edit the page.
2. Switch to **HTML** view.
3. Paste the script → **Save**. [BigCommerce Support](https://support.bigcommerce.com/s/article/Using-Script-Manager?utm_source=chatgpt.com)

#### All or selected pages

1. **Storefront → Script Manager → Create a Script**.
2. Fill **Name**, choose **Location** (Header/Footer), **Pages**, **Script Type: Script**.
3. Paste the script → **Save/Enable**. [BigCommerce Support](https://support.bigcommerce.com/s/article/Using-Script-Manager?utm_source=chatgpt.com)

<figure><img src="/files/LIGZotWVULNYWv0qxhok" alt=""><figcaption></figcaption></figure>

***


# Magento / Adobe Commerce

Below are step-by-step instructions for adding Maker’s embed scripts to Magento / Adobe Commerce.

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

### Magento / Adobe Commerce

#### Page Builder block

1. In Admin, edit the Page/Block/Category → **Edit with Page Builder**.
2. In **Elements**, drag **HTML Code** onto the canvas.
3. Paste the script → **Save** (clear cache). [Experience League](https://experienceleague.adobe.com/en/docs/commerce-admin/page-builder/elements/html-code?utm_source=chatgpt.com)

#### Reusable block

1. **Content → Elements → Blocks → Add New Block**.
2. Add an **HTML Code** element with the script → **Save**.
3. Place that block anywhere via Page Builder. [Experience League](https://experienceleague.adobe.com/en/docs/commerce-admin/page-builder/elements/html-code?utm_source=chatgpt.com)

<figure><img src="/files/TsU41zYlc8Z1b6VtSp4k" alt=""><figcaption></figcaption></figure>

***

### HubSpot CMS (new)

#### Site-wide header or footer

1. **Settings → Website → Pages**.
2. Open **Site Header HTML** (or **Site Footer HTML**).
3. Paste the script → **Save**. [HubSpot Knowledge Base](https://knowledge.hubspot.com/website-and-landing-pages/use-code-snippets-with-hubspot-content?utm_source=chatgpt.com)

#### Within a template

1. **Marketing → Files & Templates → Design Tools**.
2. Edit a theme/template; drag a **Custom HTML** module where Maker should appear.
3. Paste the script → **Publish** template. [HubSpot Knowledge Base](https://knowledge.hubspot.com/website-and-landing-pages/use-code-snippets-with-hubspot-content?utm_source=chatgpt.com)

<figure><img src="/files/tV4QY9O6Ja9E6UCfX8fZ" alt=""><figcaption></figcaption></figure>

***


# HubSpot CMS

Below are step-by-step instructions for adding Maker’s embed scripts to HubSpot CMS

<figure><img src="/files/0s8uMelFNae9bjnxLp93" alt=""><figcaption></figcaption></figure>

***

### HubSpot CMS (new)

#### Site-wide header or footer

1. **Settings → Website → Pages**.
2. Open **Site Header HTML** (or **Site Footer HTML**).
3. Paste the script → **Save**. [HubSpot Knowledge Base](https://knowledge.hubspot.com/website-and-landing-pages/use-code-snippets-with-hubspot-content?utm_source=chatgpt.com)

#### Within a template

1. **Marketing → Files & Templates → Design Tools**.
2. Edit a theme/template; drag a **Custom HTML** module where Maker should appear.
3. Paste the script → **Publish** template. [HubSpot Knowledge Base](https://knowledge.hubspot.com/website-and-landing-pages/use-code-snippets-with-hubspot-content?utm_source=chatgpt.com)

<figure><img src="/files/tV4QY9O6Ja9E6UCfX8fZ" alt=""><figcaption></figcaption></figure>


# Adding Assets

Use JPEGs, PNGs, PDFs, and text files to add context and steer Maker’s output, swap media in your project, or bring in content from external sources, all directly from your prompt.

<figure><img src="/files/O2hG8FXgShrGlZOcY6Px" alt=""><figcaption></figcaption></figure>

***

### Uploading & Referencing Local Assets

1. **Attach the file**
   * Click the **+** button under the prompt box.
   * Select **Add images & files**.
   * The **Files & Images** modal opens.
   * Stay on **Uploads** to use files you have already uploaded, or switch to **Artifacts** to reuse generated assets.
   * To add something new, click **Upload** (top right) and choose your file.
   * Once the new asset is uploaded, select it from the **Uploads** tab.&#x20;
   * Click the file thumbnail to insert it into your project.
2. **Refer to your prompt**

   ```
   Use the attached image as the hero background.
   ```
3. Maker will automatically insert or replace your project’s `<img>` with the selected asset.

<figure><img src="/files/xKJ0XpFcYKVPyJtKfVOu" alt=""><figcaption></figcaption></figure>

***

### Using External URLs

* **Paste any public URL** (PNG, JPEG, SVG, MP4, YouTube, Vimeo) directly into the prompt.
* **Prompt example**:

  ```
  Fetch this image: https://example.com/header.png and use it as the page’s hero banner.
  Embed this YouTube video (https://youtu.be/XYZ) below the introduction.
  ```
* Maker fetches and embeds external assets at generation time.

***

### Replacing Assets in Your Project

* **Share a prompt to make any asset updates**

  ```
  In the hero banner, replace the logo with the attached image.

  ```
* **Select Tool-** Target any element in your live preview by clicking on the select tool first in the prompt box
* Maker AI updates your code to reference the new asset paths.

***

### Embedding & Configuring Videos

Add the video as noted above, then prompt like:

* Make the video autoplay and loop enabled.
* Use the video as background, muted autoplay, with a poster frame from this asset

***

### Best Practices

* **Optimize file size**: You don’t need to compress images before uploading—Maker automatically optimizes them for performance. For best visual quality, upload images at **2x the display size**. Note: there is a **5MB file size limit** per image.
* **Descriptive filenames**: When adding assets, add a description in the prompt box on how to use it
* **Match dimensions**: Use aspect ratios that fit your design.
* **Host stable links**: If you upload images directly to Maker, they’re automatically served via our CDN, ensuring fast, reliable, and consistent delivery. If you link to externally hosted assets, be sure they’re on a reliable server or CDN to avoid issues with broken or unstable links when the content is loaded or updated later.

FAQ

<details>

<summary>What's the best format for adding a video to my page?</summary>

It depends on what matters most to you. If you're fine with YouTube's branding showing up, a YouTube embed is the simplest route. For short videos (around a minute or so), MP4 usually works best since it plays at full quality right from the start, with no progressive loading. If the video is meant to sit above the fold or act as a background element, HLS (m3u8) is the better choice for performance.

</details>

<details>

<summary>Will using a YouTube or Vimeo embed affect how my video looks on the page?</summary>

It can. YouTube and Vimeo players keep the video's original aspect ratio within their frame. So if your container size doesn't match the video's dimensions, you'll see blank space on the sides. MP4 and HLS don't have this issue, both can scale to fill the container regardless of the video's original ratio.

</details>

<details>

<summary>There's blank space around my video. How do I fix it?</summary>

This usually comes down to a mismatch between your container size and the video's original dimensions, and it's most common with YouTube or Vimeo embeds since they preserve the original aspect ratio. You have two options: adjust the container size to match the video, or switch to MP4 or HLS, which can scale to fill the container no matter the original ratio.

</details>

<details>

<summary>MP4 or HLS, how do I choose?</summary>

For short videos (around a minute), MP4 is a great fit since it loads at full quality immediately. HLS (m3u8) makes more sense for longer videos, background videos, or anything above the fold where performance is the priority.

</details>

<details>

<summary>Does embedding a YouTube video bring along YouTube's branding?</summary>

Yes, YouTube embeds come with YouTube's own player styling and branding. If you'd rather not have that, MP4 or HLS are good alternatives.

</details>

***


# Adding Trackers

Add and manage analytics, heatmaps, and custom tracking for your project. Scan your site for existing trackers, add new ones, and attach organization-wide trackers—all in one place.

<figure><img src="/files/gOnr0vTkMnUtqnN3wc55" alt=""><figcaption></figcaption></figure>

***

### Step 1: Scan URL for Trackers

Quickly check if your site already has tracking scripts installed.

* Open a project.
* From the dropdown on the top left select "Add Trackers"&#x20;
* Enter your site URL in Scan URL (e.g., [`https://example.com`](https://example.com/)).
* Click Scan URL.
* If trackers are found, they appear in the Available Trackers list.
* Select the trackers you want and attach them to your project.

> Use this if you’ve already embedded trackers in your website code and just need to connect them to this project.

Tips

* Scan the public URL that actually serves your pages (avoid staging or password-gated URLs unless accessible).
* Some script managers (e.g., GTM) may require the page to fully load—open the page in a new tab first if a scan returns nothing.

<div><figure><img src="/files/bwyJaD8hutRAUl00jyW5" alt=""><figcaption></figcaption></figure> <figure><img src="/files/h2HkKvzNx7UvLliw8g5w" alt=""><figcaption></figcaption></figure></div>

### Step 2:Add New Tracker

If your project needs a tracker that isn’t found by the scan:

* Click Add Tracker.
* Paste the tracker id (e.g., GA, Microsoft Clarity, Hotjar).
* Save. The tracker now appears under Current Trackers.

> Use this to manually install additional analytics or marketing pixels.

<figure><img src="/files/vSxm8xDOU8t0RlRfhylT" alt=""><figcaption></figcaption></figure>

### Step 3: Current Trackers

This section lists the trackers currently attached to your project.

* To stop using a tracker, click Remove (you can always re-attach it later from Available Trackers, if applicable).
* If no trackers are attached, you’ll see:
* &#x20;*“No trackers attached to this project. Scan a URL or add trackers from your organization.”*

### Step 4:Available Organization Trackers

If your organization has pre-approved (shared) trackers, they’ll appear here.

* Click to attach any available organization tracker to your project.
* If you see *“All organization trackers are already attached,”* there’s nothing else to add.

### Best Practices

* Verify detections: After a scan, confirm the trackers listed match what’s actually installed on your site.
* Avoid duplicates: Don’t attach the same tracker twice (e.g., two GA4 tags), which can inflate analytics.
* Align with policy: Use only the trackers your team has approved (e.g., company-wide GA4 or Clarity).
* Respect privacy: Ensure your use of trackers complies with consent/notice requirements (e.g., GDPR/CPRA) and your cookie banner setup.

### Troubleshooting

* Scan found nothing:
  * Ensure the URL is publicly accessible and not behind auth.
  * Check if an ad-blocker is hiding scripts during scan.
  * Single-page apps: make sure the base route serves the script tags.
* Tracker shows attached but no data:
  * Verify the correct property/site ID in the snippet.
  * Check domain filters and consent settings in the tracker’s dashboard.
* Seeing duplicates:
  * Remove one copy via Current Trackers, and confirm only one snippet is present in your site/template or tag manager.

***


# CMS Specific Tips

Tips and tricks on how to use Maker on CMS's like Shopify, Magento, custom, etc.


# Adding Enhanced A+ Content to Shopify Product Detail Pages

Here’s a step-by-step guide to adding Enhanced A+ Content to an individual Shopify product detail page.

#### Step 1

To begin, access your Shopify admin account. Click on search and look for custom data to proceed.

<figure><img src="/files/DBxldQFBlHJCxIPPm9LH" alt=""><figcaption></figcaption></figure>

#### Step 2

Select Metafields and Metaobjects from the options available.

<figure><img src="/files/AxxQ7NP7cunJAOZopOfk" alt=""><figcaption></figcaption></figure>

#### Step 3

Navigate to Products and then click on Add Definition to create a new metafield.

<figure><img src="/files/0lKMBbHSLFHGqim2I8Wi" alt=""><figcaption></figcaption></figure>

#### Step 4

Name the new metafield as "Maker AI" or anything else you'd like to call it.

<figure><img src="/files/8gCiMFr8Ayv1kFVjS2ma" alt=""><figcaption></figcaption></figure>

#### Step 5

The system will automatically create a namespace. For the type, select multiline text.

<figure><img src="/files/nz35oKaK9DAiVtoi7ro7" alt=""><figcaption></figcaption></figure>

#### Step 6

After making your selections, click on Save.

<figure><img src="/files/ZcwHNHR4GYK1bgSgWcTu" alt=""><figcaption></figcaption></figure>

#### Step 7

With the metafield created, return to the main Shopify interface. Enable the metafield for products so it displays on the PDP.

<figure><img src="/files/R6Fw63fzyZx2Yfmwr7lX" alt=""><figcaption></figcaption></figure>

#### Step 8

Click on "Product," then select any product for which you wish to display Maker content.

<figure><img src="/files/YEsY0gc0zTtJ07TTlKXF" alt=""><figcaption></figcaption></figure>

#### Step 9

In Maker, copy the simple embed code (recommended) or the iframe embed code (in case there is a CSS clash) for the content you plan to add to Shopify.

<figure><img src="/files/3NEHGaH1UQVjR0Z33Eo3" alt=""><figcaption></figcaption></figure>

#### Step 10

Locate the metafield "Maker AI" that you just created, and proceed to enter either the simple embed code (recommended) or the iframe embed code (in case there is a CSS clash).

<figure><img src="/files/O6m6Yfn4wKRSbnIyjWxW" alt=""><figcaption></figcaption></figure>

#### Step 11

Ensure the content loads on your PDP when a user visits the product page- Navigate to the sales channel, click on Online Sales, then Online Store, and Customize.

<figure><img src="/files/VCOwSPMHQzriO6PAJbmt" alt=""><figcaption></figcaption></figure>

#### Step 12

Switch from Homepage to Products and click on Default Products. In the product page template, add a new section by selecting a custom liquid section.

<figure><img src="/files/U8iWIHfthdyWIkix8hhF" alt=""><figcaption></figcaption></figure>

#### Step 13

In the custom liquid section, insert the necessary custom liquid code. Using the metafield "Maker AI," integrate the content accordingly.

In this case, this is the code added (note: adapt this code to the metafiled name you created)

```
{%- if product.metafields.custom.makerai.value -%}
<div class="product-embed">
{{ product.metafields.custom.makerai.value }}
</div>
{%- endif -%}
```

<figure><img src="/files/sLdHCBYAZyIr7PvwgxKP" alt=""><figcaption></figcaption></figure>

#### Step 14

The system will automatically capture the metafield. Once confirmed, click Save and allow the changes to take effect.


# Custom Fonts

Maker supports **Google Fonts** and **custom fonts** using **text-based instructions** inside the **Style Guide assets** tab. These instructions are used to generate the Style Guide that defines how fonts are applied across your projects.

***

### Using Google Fonts

Maker automatically handles Google Fonts — they will render correctly both in the preview and live site.

You can reference Google Fonts directly in your instructions:

```
Fonts:
  • Primary: 'Playfair Display', serif;
  • Secondary: 'Open Sans', sans-serif;

```

***

### Using Custom Fonts

To use custom fonts, you must upload them to the assets tab for the Style Guide&#x20;

**Guidelines:**

* Upload the actual **.ttf/.otf/.woff/.woff2** files in **Assets,** even if they are mentioned in the PDF you uploaded to the Assets.&#x20;
* Always include fallback fonts (e.g., `sans-serif`, `serif`).

***

### Steps to Apply Fonts

1. Go to **Settings > Style Guide**.
2. Select an existing theme or create a new one.
3. Click Assets and **upload the custom font**.
4. Click **Generate** to rebuild the theme.
5. Review the "Typography" tab in the **Style Guide** to confirm the fonts and links are listed.

***

### Using Fonts in Prompts

After fonts are added to your Style Guide you they will be applied to any new project based on that Style Guide. You can also add a prompt in the project:

```
Use 'MyCustomFont' for H1 and 'Open Sans' for body text.
Use Google font: “Use Inter from Google Fonts for Body text.”
Use custom font: “Use ‘Acme Sans’ for H1/H2. It’s uploaded in my Style Guides.”
```

Maker will follow the font stack provided in your theme.

***

### Typography Best Practices

* **Font Scale**: Base 16px with a 1.25–1.5 scale ratio for headings.
* **Line-height**: 1.4–1.6 for body text; 1.2–1.3 for headings.
* **Hierarchy**: Set consistent sizing for H1–H6 and paragraph text.
* **Weight & Contrast**: Use bold for emphasis; ensure legibility and accessibility (WCAG AA).
* **Spacing**: Maintain consistent vertical rhythm across sections.

***

By specifying fonts directly in your **Style Guide Typography**, you ensure visual consistency across generated pages while supporting both Google and custom fonts in a predictable, reliable way.

***


# Support Policy

Our support policy outlines how to get help, expected response times, and escalation paths—so you always know where to turn when you need assistance.

***

### Support Channels

* **In-app Chat** Click the blue chat bubble in the lower-right of the editor for real-time help.
* **Email** <support@maker.co>
* **Community Forum** <https://discord.gg/2y2fTmRA>— peer-to-peer support, answered by our community and Maker champions.

***

### Hours of Operation

* **Pro, Teams, and Max plans:** Monday–Friday, 9 AM–6 PM Pacific Time

  Trial users receive the same level of support as the plan they selected when starting their trial.
* **Enterprise Plans** 24×7×365 coverage for critical issues
* **Holidays & Maintenance** We publish any planned maintenance windows in advance; emergency maintenance may occur with minimal notice.

***

### Support Tiers & SLAs

| Tier           | Response Time   | Resolution Target |
| -------------- | --------------- | ----------------- |
| **Free**       | ≤ 48 hours      | Best effort       |
| **Pro**        | ≤ 24 hours      | ≤ 72 hours        |
| **Enterprise** | ≤ 1 hour (P1)\* | ≤ 24 hours (P1)\* |

\* *P1 = Production-down or critical feature failure.*

***

### Issue Severity & Priorities

1. **P1 – Critical** Service unavailable or data loss.*Escalate via In-app Chat or 24×7 email.*
2. **P2 – Major** Major feature broken, significant impact.
3. **P3 – Normal** Feature requests, usage questions.
4. **P4 – Minor** Documentation typos, non-critical UI tweaks.

*Priority is assigned based on impact and plan level.*

***

### How to File a Support Request

1. **Gather information**
   * Project ID and name
   * Screenshots or logs
   * Steps to reproduce
2. **Choose your channel**
   * In-app Chat for real-time or urgent issues
   * Email <support@maker.co> for detailed requests
3. **Use clear subject lines** \[P2]\[proj\_123] “Publish” button disabled on Chrome

***

### Escalation Process

If your issue isn’t resolved within the SLA window:

```
Reply to your ticket or chat thread requesting escalation.
```

***

### ✅ What We Support

Maker is designed to be self-serve, but we’re here to help if something’s not working as expected.

<table data-header-hidden><thead><tr><th width="269">Category</th><th>Topics</th></tr></thead><tbody><tr><td><strong>Getting Started</strong></td><td><ul><li>Tips for starting your first project</li><li>How to write clear prompts for better results</li><li>Using Figma, docs, or URLs as references</li><li>Understanding key features like Brand Styles, Deploy, and Custom Domains</li></ul></td></tr><tr><td><strong>Troubleshooting</strong></td><td><ul><li>Platform bugs or generation issues</li><li>Features not working after a few tries</li><li>Issues with imports, publishing, or design output</li><li>Clarifying how something works or where to find it</li></ul></td></tr><tr><td><strong>Account Help</strong></td><td><ul><li>Billing, plan changes, and workspace management</li></ul></td></tr></tbody></table>

***

### 🚫 What’s Out of Scope

We don’t provide hands-on support for:

* Setup or onboarding beyond docs and quick tips
* Custom coding or design work (this can be quoted separately)
* API and SDK integrations
* Third-party tools or non-Maker platforms
* Training or strategic consulting (available for Enterprise plans)

> For most questions, Maker’s in-product assistant or Help Center can get you unstuck fast. Paid users can always escalate to human support if needed.

***

### Self-Service Resources

* **Community Forum**: <https://discord.gg/2y2fTmRA>
* **Status Page**: [https://status.maker.co](https://status.maker.ai/)

***

If you ever have questions about this policy or need help navigating our support options, please reach out via any channel above. We’re here to ensure your success with Maker!

***


# Glossary

<table><thead><tr><th width="220">Term</th><th>Definition</th></tr></thead><tbody><tr><td><strong>AI Assistant</strong></td><td>The in-editor sidebar widget that answers questions, writes or refines code, and debugs in real time.</td></tr><tr><td><strong>Assets</strong></td><td>Images, videos, and other media files you upload or reference that Maker can insert into your project.</td></tr><tr><td><strong>Brand Style</strong></td><td>A reusable theme—colors, fonts, gradients, and layout cues—extracted from screenshots or instructions to keep projects on-brand.</td></tr><tr><td><strong>Component</strong></td><td>A reusable UI element (e.g., button, card, navbar) you define once and can insert anywhere in your project.</td></tr><tr><td><strong>Custom Domain</strong></td><td>Your own hostname (e.g. <code>app.example.com</code>) pointed at your Maker project via DNS, with SSL automatically provisioned.</td></tr><tr><td><strong>Embed</strong></td><td>An <code>&#x3C;iframe></code> or script snippet that lets you show a live Maker project inside another website or application.</td></tr><tr><td><strong>Figma Import</strong></td><td>The feature that lets you paste a Figma frame link into chat to auto-generate React/Tailwind components from your designs.</td></tr><tr><td><strong>History</strong></td><td>The panel that stores automatic snapshots of your project so you can preview or restore previous versions.</td></tr><tr><td><strong>Live Preview</strong></td><td>The draft view that updates instantly in the right-hand pane as you edit code or regenerate prompts.</td></tr><tr><td><strong>New Chat / New Project</strong></td><td>The entry point for starting a fresh Maker session: name the project, optionally select a Brand Style, and begin prompting.</td></tr><tr><td><strong>Prompt</strong></td><td>A natural-language instruction you give Maker describing the code or UI you want generated or modified.</td></tr><tr><td><strong>Prompt Library</strong></td><td>Your personal collection of saved prompts and templates for reuse across projects.</td></tr><tr><td><strong>Project</strong></td><td>A container for your files, settings, assets, and history—each with its own live URL and privacy controls.</td></tr><tr><td><strong>Project Remix</strong></td><td>Maker's “fork” feature: creates an independent copy of a project so you can experiment without affecting the original.</td></tr><tr><td><strong>Publishing</strong></td><td>The process of making your project’s live preview available at a permanent URL (public or private).</td></tr><tr><td><strong>Regenerate</strong></td><td>Rerunning Maker on a prompt or Brand Style to update code or theme based on new instructions or inputs.</td></tr><tr><td><strong>Select to Edit</strong></td><td>A prompt-box feature: click the target icon, select an element in preview, then prompt AI to modify only that element.</td></tr><tr><td><strong>Theme Description</strong></td><td>The summary of your Brand Style—lists fonts, colors, gradients, and overrides generated during theme creation.</td></tr><tr><td><strong>Usage &#x26; Credits</strong></td><td>Metrics and limits showing how many AI-generation credits you’ve used and how many remain for the current billing cycle.</td></tr><tr><td><strong>XML Sitemap / robots.txt</strong></td><td>Configuration files that help search engines discover, index, and crawl your published Maker project.</td></tr></tbody></table>

***


# Community (TBD)

Engage with the Maker AI community—get inspired, share your work, and help shape the product roadmap.

***

### Featured Projects

Browse a curated showcase of standout pages and web components built by fellow Maker users, or submit your own for a chance to be featured.

* **Submit your project**: In the editor click **Share → Submit to App Showcase**.
* **Explore Templates**: Visit **Community & Support → Featured Projects** in the sidebar.

***

### Community Remixes

See how other builders have forked your projects—and fork theirs to learn new techniques.

* **View remixes**: Go to **Community & Support → Community Remixes**.
* **Remix a project**: Click **Remix** on any shared project to create your own copy.

***

### Feedback & Roadmap

Help us prioritize improvements:

* **Feature Requests**: Submit requests via <support@maker.co>
* **Issue Reporting**: Click the bug icon in the editor or visit **Support & Contact → Issue Reporting**.

***

### Connect & Collaborate

Join real-time conversations, ask questions, and share tips:

* **Discord**: **Community Forum** <https://discord.gg/2y2fTmRA>

***

### Support & Contact

Need help? We’re here for you:

* **In-app Chat**: Click the blue bubble in the lower-right of the editor.
* **Email**: <support@maker.co>

***


# Animations and Effects (TBD)

{% embed url="<https://vimeo.com/1097293511>" %}


# Use Cases

Maker turns your plain-English prompts into real, responsive web pages and front-end apps—instantly. Here are some common use cases:

### What can you build with Maker?

#### 💡 Web Pages

<table><thead><tr><th width="270">Page Type</th><th>Description</th></tr></thead><tbody><tr><td>Marketing Landing Pages</td><td>Launch product, campaign, or event pages with sections like hero banners, testimonials, pricing tables, and FAQs.</td></tr><tr><td>Blog Pages</td><td>Generate blog layouts with featured images, author bios, tags, and rich text formatting—perfect for content marketing.</td></tr><tr><td>Product FAQ Pages</td><td>Build organized, searchable FAQ sections that match your brand and update easily as questions evolve.</td></tr><tr><td>Company Homepages</td><td>Create professional homepages with navigation, mission statements, featured products/services, and contact forms.</td></tr><tr><td>Link-in-Bio Microsites</td><td>Generate compact mobile-optimized pages to highlight key links, announcements, or promotions.</td></tr><tr><td>Team or About Pages</td><td>Highlight your people, values, and story with profile grids, timelines, and quote sections.</td></tr><tr><td>Coming Soon Pages</td><td>Create branded “Coming Soon” or waitlist pages with email capture and countdown timers.</td></tr><tr><td>Portfolio Sites</td><td>Build project showcases with image galleries and case study layouts—perfect for designers and creatives.</td></tr><tr><td>Lookbook</td><td>Showcase seasonal refreshes, collabs, or new drops with beautifully styled lookbooks.</td></tr><tr><td>Event Pages</td><td>Set up pages for events, including schedules and speaker sections.</td></tr><tr><td>Enhanced A+ Product Pages</td><td>Create elegant, customizable A+ content with image carousels, specs, and more.</td></tr><tr><td>Job Boards or Career Pages</td><td>Feature open roles, testimonials, and apply links to support recruiting.</td></tr></tbody></table>

#### 🧩 Web Components

<table><thead><tr><th width="270">Component Type</th><th>Example Features</th></tr></thead><tbody><tr><td>Hero sections</td><td>With animation</td></tr><tr><td>CTAs</td><td>On-hover effects</td></tr><tr><td>Image galleries</td><td>With optional hotspots and quickview</td></tr><tr><td>Before/after sliders</td><td>Compare visuals interactively</td></tr><tr><td>FAQs &#x26; accordions</td><td>With built-in search bars and filters</td></tr><tr><td>Comparison tables</td><td>For product or service comparisons</td></tr><tr><td>Pricing tables</td><td>With monthly/yearly toggles</td></tr><tr><td>Interactive charts</td><td>Size charts, calculators</td></tr><tr><td>Interactive maps</td><td>With zoom and pin support</td></tr><tr><td>Flip/hover cards</td><td>Reveal content on hover</td></tr><tr><td>Product recommendation quiz</td><td>For guided product discovery</td></tr><tr><td>Testimonial sliders</td><td>Showcase customer quotes with carousel</td></tr><tr><td>Cards &#x26; feature grids</td><td>Visual content layouts</td></tr><tr><td>Buttons, badges, and tags</td><td>Styled, responsive elements</td></tr><tr><td>Tabs &#x26; modals</td><td>For toggling views or showing dialogs</td></tr><tr><td>Countdown timers</td><td>Great for launches and promos</td></tr><tr><td>Embedded video blocks</td><td>Add Vimeo/YouTube or other embeds</td></tr><tr><td>Carousels &#x26; sliders</td><td>For images, products, or testimonials</td></tr><tr><td>Step-by-step flows</td><td>For onboarding or guided experiences</td></tr><tr><td>Timelines</td><td>Visual representation of milestones</td></tr><tr><td>Responsive grid layouts</td><td>Auto-adjust across breakpoints</td></tr><tr><td>Announcement banners</td><td>For key alerts or promos</td></tr><tr><td>Social media link blocks</td><td>Easily link out to platforms</td></tr><tr><td>Scroll-based animation triggers</td><td>Bring content to life as users scroll</td></tr><tr><td>Language switcher toggle</td><td>Enable multilingual interfaces</td></tr><tr><td>Toggle switches</td><td>Light/dark mode, pricing plans, etc.</td></tr><tr><td>Autoplay marquee</td><td>For announcing features, updates, or promos</td></tr></tbody></table>

### Geotargeting Use Case

#### Can I show different default content based on a visitor’s location?

Yes. Maker can adapt content using the browser’s built-in location permission. When a visitor **grants** location access, the page can set defaults (e.g., category, region, module) according to your prompt rules. If permission is **denied** or unavailable, your defined fallback shows.

#### How it works

1. **Add a plain-English rule to your Maker project prompt** describing what to show for specific regions.
2. **Browser asks for location permission** when the page needs it (standard popup).
3. **Maker AI applies your rule** if location is available; otherwise it uses your fallback.

***

#### Example prompt snippet

> * Use geotargeting to set the default content.
> * If the visitor is in **San Francisco**, show the **California** category by default.
> * If location is not available or permission is denied, default to **All Products**.
> * Never block the page while waiting for location.

*(Adjust regions, categories, and fallbacks to fit your use case.)*

***

#### Best practices

* **Always define a fallback** for “deny/no location” cases.
* **Don’t block initial render.** Load default content immediately; let location update the UI if/when available.
* **Be transparent.** Visitors must opt in to share location; no consent means no geotargeting.

For more technical details, see the official browser documentation for the [Geolocation API](https://developer.mozilla.org/en-US/docs/Web/API/Geolocation_API).

***

#### Good use cases

* Auto-select a regional category or module
* Show local events, stores, or promos by default
* Display region-specific copy or shipping notes

***

**Additional Notes:**

**Does this work without consent?**\
No. The browser requires explicit permission. If declined, the fallback shows.

**Will it slow down the page?**\
Not if you avoid blocking. Render defaults first, then apply geotargeted changes after permission is granted.

**Is any location data stored?**\
This approach is designed for in-browser use after consent. Maker does not store or track location data.

***


# Video Tutorials

### Start Creating

{% embed url="<https://vimeo.com/1097293538>" %}

***

### Create Style Guides

{% embed url="<https://vimeo.com/1097293500>" %}

***

### Select to edit

{% embed url="<https://vimeo.com/1097293557>" %}

***

### Adding Animations and Interactions

{% embed url="<https://vimeo.com/1097293511>" %}

***

### Publish & Share

{% embed url="<https://vimeo.com/1097293527>" %}

***

### Figma Import

{% embed url="<https://vimeo.com/1101616518>" %}

***

### Create from image

{% embed url="<https://vimeo.com/1113137586?share=copy#t=0>" %}

***

### Enhance your project

{% embed url="<https://vimeo.com/1112925424?share=copy#t=0>" %}

***

### Image and video generation&#x20;

{% embed url="<https://vimeo.com/1128774132?fe=ci&fl=sv&share=copy>" %}

***

### Project Remix

{% embed url="<https://vimeo.com/1146578809?fe=ci&fl=sv&share=copy>" %}


# Liked Projects

Save and revisit your favorite projects by “liking” them—click the heart icon on any project card to add it to your personal Liked tab.

<figure><img src="/files/wU4DGHklQbdvTMMDuBoK" alt=""><figcaption></figcaption></figure>

***

### What Are Liked Projects?

When you click the ❤️ heart on a project card in the dashboard, that project is marked as “Liked” (featured) and added to your Liked Projects list. It’s a quick way to bookmark work you want to revisit or showcase.

***

### How to Like a Project

1. In the **Projects** dashboard, hover over any project card.
2. Click the ❤️ heart icon in the top-right corner of the card.
3. The heart fills in, indicating the project is now in your Liked list.

<figure><img src="/files/HrxWkuLWnQTGIaiQdXIH" alt=""><figcaption></figcaption></figure>

***

### Viewing Your Liked Projects

1. In the left sidebar, click the **Projects** icon.
2. Switch to the **Liked** tab at the top of the dashboard.
3. Browse all projects you’ve hearted—click any card to open it.

<figure><img src="/files/cdQqQm27zUJHT5DuCzoz" alt=""><figcaption></figcaption></figure>

***

### Removing a Like

* To un-like, simply click the ❤️ icon again on the project card—this removes it from your Liked tab but leaves the project intact in your main list.

***

### Best Practices

* **Curate a portfolio:** Heart polished, production-ready apps to quickly access or share with others.
* **Organize by theme:** Use Liked Projects to group apps by client, use case, or inspiration.
* **Combine with Remix:** Like a community template, then remix it to kickstart your own version.

***

With Liked Projects, you can easily bookmark and organize the apps that matter most.

***


# Community Remixes

Fork any project—yours or shared—into a brand-new copy without altering the original. Your remixes live in their own tab for easy access and further experimentation.

***

### What Are Remixes?

A Remix is a snapshot copy of an existing project at the moment you fork it. It retains all files, settings, and assets, but any changes you make to the Remix do not affect the source project.

***

### How to Create a Remix

1. Open the project you want to fork.
2. Click the **•••** menu on the project card or in the editor toolbar.
3. Select **Remix**.
4. The Remix appears under **Projects → Remixes**.

***

### Viewing Your Remixes

1. In the left sidebar, click **Projects**.
2. Switch to the **Remixes** tab at the top of the dashboard.
3. Browse and open any Remix to continue editing or share it.

***

### Managing Remixes

* **Delete**: Hover → **••** → **Delete** (removes only the Remix).
* **Share**: Open a Remix → click **Share** → copy its URL or embed snippet.

***

### Best Practices

* **Experiment safely**: use Remixes to try big UI or feature changes without risk.
* **Template library**: remix polished starter apps to build your own templates.
* **Collaborative forks**: share your Remix link so teammates can remix that version in turn.

With Remixes, you can branch, iterate, and share projects freely—keeping your main builds pristine.

***


# Support & Contact

Whether you're just getting started or running into a snag, here’s how Maker support works and what you can expect.

***

### What We Support

Maker is designed to be self-serve, but we’re here to help if something’s not working as expected. The following help is available to all users with an active plan or free trial.

**Getting Started**

* Tips for starting your first project
* How to write clear prompts for better results
* Using Figma, docs, or URLs as references
* Understanding key features like Brand Styles, Deploy, and Custom Domains

**Troubleshooting**

* Platform bugs or generation issues
* Features not working after a few tries
* Issues with imports, publishing, or design output
* Clarifying how something works or where to find it

**Account Help**

* Billing, plan changes, and workspace management

***

### What’s Out of Scope

We don’t provide hands-on support for:

* Setup or onboarding beyond docs and quick tips
* Custom coding or design work (this can be quoted separately)
* API and SDK integrations
* Third-party tools or non-Maker platforms
* Training or strategic consulting (available for Enterprise plans)

> For most questions, Maker’s in-product assistant or Help Center can get you unstuck fast. Paid users can always escalate to human support if needed.

***

### How to Reach Us

**Best Option: In-App Support**

If you're on a paid plan, open the chat inside Maker. Our AI assistant handles quick questions, and you can always ask to talk to a human for anything complex.

**Need to request a feature?**

Have a feature request. Reachout [here.](https://makerdocs.featurebase.app/en)&#x20;

**Community Help**

Join the [Maker Discord](https://discord.gg/2y2fTmRA) for peer support, tips, and examples. It’s a great space to ask about prompt structure, layout ideas, or general workflow questions.

> Pro tip: Share context like your project link, prompt, or screenshots- it helps everyone respond faster.

***

### Platform Status & Updates

For any known issues or platform-wide updates:

* Check <https://status.maker.co/>
* Visit the #announcements channel in Discord <https://discord.gg/2JYv9xK6>

No need to submit tickets if it’s a known issue- we’ll keep you posted there.

***

We’re here to help you succeed with Maker- reach out anytime!

***


