> ## Documentation Index
> Fetch the complete documentation index at: https://docs.polyembed.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Quickstart

> Sign in, accept the agreements, verify your domain, create a widget and paste the snippet.

This guide takes you from a new account to live odds in your articles. It takes about ten minutes, plus any time your DNS provider needs to publish a record.

## Prerequisites

* A Google account or an email address you can receive mail at.
* Access to your site's DNS, its HTML `<head>`, or a way to upload a file to `/.well-known/` on your domain.
* Access to the template your CMS uses to render articles.

## Set up PolyEmbed

**1. Sign in to the publisher dashboard**

Go to [polyembed.io/publisher-login](https://polyembed.io/publisher-login) and continue with Google or an email sign-in link. Your publisher account is created on first sign-in.

See [Publisher account](https://docs.polyembed.io/publishers/account.md).

**2. Accept the publisher agreements**

Open **Agreements** in the dashboard and accept the Publisher Terms, the trading risk disclosure and the payout terms. The Publisher Terms are required before you can verify a domain.

**3. Verify your domain**

Open **Domains**, add the site where your articles live, and choose a verification method:

* **DNS TXT record**: best for root domains.
* **HTML meta tag**: paste one tag into your homepage `<head>`.
* **Static file**: upload one text file to `/.well-known/polyframe-verification.txt`.

Publish the value the dashboard gives you, then click **Check verification**. Verifying `example.com` also covers `news.example.com` and every other subdomain.

See [Verify your domain](https://docs.polyembed.io/publishers/verify-domain.md).

**4. Create a widget**

Open **Widgets**, click **New widget**, and pick your verified domain. One widget serves every article on that domain.

See [Create a widget](https://docs.polyembed.io/publishers/create-widget.md).

**5. Paste the snippet into your article template**

Copy the embed code from the widget page and paste it once into the template that renders articles. Replace `{ARTICLE_TITLE}` and `{ARTICLE_KEYWORDS}` (shown URL-encoded as `%7BARTICLE_TITLE%7D` and `%7BARTICLE_KEYWORDS%7D`) with your CMS variables, URL-encoded.

```html Article template theme={null}
<iframe id="polyembed-YOUR_WIDGET_ID"
  src="https://iframe.polyembed.io/embed/YOUR_WIDGET_ID?title=%7BARTICLE_TITLE%7D&keywords=%7BARTICLE_KEYWORDS%7D"
  width="100%" height="260" style="border:0;max-width:560px;" loading="lazy"
  allow="clipboard-write" referrerpolicy="strict-origin-when-cross-origin"
  title="Prediction market odds"></iframe>
<script>/* resize listener included in your dashboard snippet */</script>
```

Copy the full snippet from the dashboard rather than this example: it includes the script that resizes the frame and collapses it when no market matches. On WordPress, use the [shortcode](https://docs.polyembed.io/install/wordpress.md) instead.

**6. Publish an article and check it**

Open a live article on your verified domain. If a relevant market is live, the widget shows it. If not, the widget collapses and leaves no gap. Impressions appear in **Analytics** as soon as a widget renders.

See [Test your embed](https://docs.polyembed.io/install/test-your-embed.md).

> [!TIP]
>
> Your widget is live. Next, read [How market matching works](https://docs.polyembed.io/publishers/market-matching.md) to get tighter matches from your keywords.

> [!TIP]
>
> Need help? Email [contact@polyembed.io](mailto:contact@polyembed.io) or message [@polyembed](https://x.com/polyembed) on X.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.