Skip to main content

How to Embed a Growi Campaign on Your Website with an iframe

Put your Growi campaign application page on any website with one iframe. Creators apply without leaving your site, and every application still lands in that campaign.

S
Written by Solomon Bassalian

Overview

You can put a regular Growi campaign — Pay Per Post, Collect Leads, TikTok Shop, Performance-Based, and the rest — directly on your website with an iframe. Visitors see your campaign brief and application form without leaving your site. Every application still goes into that campaign in Growi.

This is the hosted campaign signup page at growi.io/o/..., framed on your page. It is not the Shopify ambassador signup block.

Note: If you want to embed a Shopify ambassador program, do not use this iframe. Use the Growi app embed instead: How to Embed Your Ambassador Signup Form on Your Shopify Store.

Before you start

You need:

  1. A live campaign. Go to Onboard Creators > Campaigns and confirm the campaign is active (not ended, canceled, or archived).

  2. The campaign signup URL. It looks like https://www.growi.io/o/your-org/c/12345.

  3. A place on your site that can hold HTML. A Shopify Custom Liquid section, a WordPress Custom HTML block, a Webflow Embed, or any page you can edit.

1. Copy your campaign signup link

  1. In Growi, go to Onboard Creators > Campaigns.

  2. On the campaign row, click the chain/link icon. The tooltip says Copy Signup Link.

  3. In the invite drawer, choose Share Username Only and your language, then copy the link.

You can also open the campaign and click Copy Signup Link from the signup form / whitelabel page.

The URL is always:

https://www.growi.io/o/YOUR_ORG_SLUG/c/YOUR_CAMPAIGN_ID

YOUR_ORG_SLUG is your organization slug (the same one in your Growi dashboard URL). YOUR_CAMPAIGN_ID is the campaign's numeric id.

Tip: For an embedded form, add ?language=en&method=username to the URL. Username-only is more reliable inside an iframe than “Link Social Account,” which opens a login popup some browsers block.

2. Paste this iframe on your page

Replace the org slug and campaign id with yours:

<iframe
src="https://www.growi.io/o/YOUR_ORG_SLUG/c/YOUR_CAMPAIGN_ID?language=en&method=username"
title="Apply to our campaign"
width="100%"
height="900"
style="border: 0; width: 100%; min-height: 900px; border-radius: 12px;"
loading="lazy"
></iframe>

A finished example:

<iframe
src="https://www.growi.io/o/acme/c/12345?language=en&method=username"
title="Apply to the Acme campaign"
width="100%"
height="900"
style="border: 0; width: 100%; min-height: 900px; border-radius: 12px;"
loading="lazy"
></iframe>

That snippet works on any site that allows an iframe. The form is hosted by Growi, so you do not copy fields into your CMS. When you edit the campaign in Growi, the embedded page updates on the next load.

Where to paste it

Shopify (standard theme)

  1. In Shopify admin, go to Online Store > Pages and create or open the page (for example, “Creators” or “Join our campaign”).

  2. Go to Online Store > Themes > Customize and open that page.

  3. Click Add section, choose Custom liquid (some themes call it Custom HTML or Custom code), and paste the iframe.

  4. Save, then open the live page and submit a test application from an email you control.

Note: Do not add the Growi Affiliate Signup Form app block for a regular campaign. That block is only for ambassador programs and needs a program form ID, not a campaign id.

WordPress

Edit the page, add a Custom HTML block, paste the iframe, and update. If a security plugin strips iframes, allow www.growi.io.

Webflow

Add an Embed element where the form should appear, paste the iframe, and publish.

Squarespace, Wix, or another site builder

Add a Code / Embed / HTML block and paste the same iframe. If the builder only allows a URL, paste the campaign signup link instead of framing it — creators will open Growi in a new page, and applications still arrive.

Custom HTML or a headless storefront

Paste the iframe anywhere in the page body. Give the parent container a width (for example, max-width: 1100px) so the two-column desktop layout has room. Do not put overflow: hidden or a short fixed height on that container, or the form will look cut off.

Optional URL settings

Query

What it does

language=en

English. Also de (German) and es (Spanish).

method=username

Creators type their social usernames. Best for iframes.

method=oauth

Creators connect TikTok / Instagram / YouTube in a popup. Use this only if you need Spark codes or verified account linking, and test the popup on your live page.

Join them with &, for example:

https://www.growi.io/o/acme/c/12345?language=en&method=username

What happens after someone applies

  1. The creator fills out the form inside the iframe — name, email, socials, and any questions or contract you configured.

  2. Growi emails a one-time code to confirm their email. They enter it in the same form.

  3. The application appears under that campaign in Growi (and in Creators > Applications).

  4. If you review applications manually, approve or reject them there. If the campaign auto-approves, they are in immediately.

The iframe and the standalone Growi link are the same campaign. You can use both.

Important notes

  • Use the www URL. Set src to https://www.growi.io/o/.... https://growi.io/... redirects to www and some sites mishandle that inside an iframe.

  • Give it height. Start at 900 pixels. The page shows the campaign brief and the application side by side on desktop. If visitors have to scroll too much, raise the height. If your theme clips the bottom, remove any max-height or overflow hidden on the parent.

  • Do not sandbox the iframe. A sandbox attribute will break email verification, login, and apply.

  • Ended campaigns show a closed message. If you end or cancel the campaign, the iframe shows that it is no longer active instead of the form.

  • This does not track Shopify sales by itself. The iframe only collects applications. Affiliate link and discount-code tracking still come from the Growi Shopify app or your usual tracking setup.

  • Ambassador programs are different. Those have their own embed script and Shopify app block. See the ambassador article linked above.

Troubleshooting

The iframe is blank, or the browser says it refused to connect
Confirm the URL is https://www.growi.io/o/YOUR_ORG_SLUG/c/YOUR_CAMPAIGN_ID with the real slug and id, and that the campaign is still active. Open the same URL in a new tab — if it loads there, the iframe URL is correct.

The form is cut off or has a double scrollbar
Increase height and min-height (try 1100 or 1200). Make sure the Shopify section, WordPress block, or parent div does not set a smaller height or overflow: hidden.

Social login never finishes
Switch the iframe URL to method=username, or copy a username-only link from the invite drawer. OAuth popups are often blocked inside iframes.

No applications arrive
Submit a test from an email you control. Check that campaign's applications list, not a different campaign. If the campaign is ended, the iframe will not accept new signups.

WordPress or a security plugin removes the iframe
Allow embeds from www.growi.io, or paste the snippet as Custom HTML rather than in the visual editor.

FAQs

Can I style the form to match my site?
The iframe shows Growi's campaign page, including your campaign name, brief, and any signup-form copy you set under the campaign's signup / whitelabel settings. You cannot restyle the fields with your site's CSS. You can style the page around the iframe (background, heading, padding).

Can I embed the same campaign on more than one page?
Yes. Paste the same iframe on as many pages as you like. All submissions go to the same campaign.

Do applicants need a Growi account first?
No. They apply on your page and confirm their email. That creates their Growi creator login.

Does this work on Shopify Plus or a headless storefront?
Yes. Any page that can render an iframe will work.

Can I skip the iframe and just share the link?
Yes. The same signup URL works in an Instagram bio, email, QR code, or a button that opens a new tab.


Related articles

Need help checking an embed? Reach out via live chat and we will look at the page with you.

Did this answer your question?