Launch offer: 3-day trial for $1, then $39/mo. Cancel anytime.

Connect Webflow to LazySEO

LazySEO adds each article as an item in one Webflow CMS collection, using the Webflow Data API (v2) and a site API token. Before each publish it reads the collection's fields and fills the ones it recognises, so the main part of this setup is checking that your collection has those fields and no other required fields.

Last reviewed October 1, 2026.

Before you start

  • A Webflow site on a plan that includes the CMS, with a collection for blog posts (the Webflow "Blog Posts" collection template works well).
  • Site administrator access in Webflow (only site admins can create API tokens).

Step by step

  1. 1Check the fields in your collection

    LazySEO matches fields by their field slug and type. In the Designer, open the CMS panel and the collection settings to see your fields. Webflow builds a field's slug from the name you give it when you create it, so if you add a field, use one of these names:

    • Name (name) and Slug (slug): built into every collection. Filled with the article title and slug.
    • Article body, type Rich text: the first field with the slug post-body, body, content, rich-text, post-content or article-body; if there is none, the first Rich text field in the collection. The collection needs at least one Rich text field. The Blog Posts template has Post Body.
    • Summary, type Plain text or Rich text, slug post-summary, summary, excerpt, description or short-description: the meta description. The Blog Posts template has Post Summary.
    • Meta description, type Plain text or Rich text, slug meta-description, seo-description, meta-desc or seo-meta-description: the meta description again, so you can bind it to the page's SEO settings.
    • Images, type Image, slug main-image, thumbnail-image, image, featured-image, cover-image or hero-image: every one of these fields gets the article banner. The Blog Posts template has Main Image and Thumbnail Image.
    • Tags (optional), type Plain text, slug tags, keywords or topics: the article topics as comma-separated text. Option and Reference fields are not filled, because Webflow needs its own IDs for them.
    • Any other required field (a required author or category reference, for example) stops publishing with an error that names it. Make those fields optional in Webflow.
  2. 2Find the Collection ID

    • In the Designer, open the CMS panel and open the settings of your blog collection; the Collection ID is shown there.
    • You don't need the Site ID: LazySEO publishes with the Collection ID and the token only.
  3. 3Create an API token

    • In Site settings, open Apps & integrations in the left sidebar.
    • Scroll to API access and click Generate API token.
    • Name it LazySEO and give it CMS read and write access. LazySEO needs read access to see the collection's fields and write access to add items.
    • Click Generate token and copy it. Webflow shows it only once.
  4. 4Open the integration form in LazySEO

    • Open your project in LazySEO.
    • In the left sidebar, under Settings, click Integrations.
    • Click Add Integration.
    • In the window that says "Choose the type of integration you want to add.", click Webflow.
  5. 5Save the integration

    Fill in the fields as described in the table below, leave Enabled switched on (disabled integrations are skipped during publish) and click Add integration.

Fill in the LazySEO form

Labels below match the Webflow form in LazySEO. Fields marked required must be filled in before you can save.

Namerequired

Any name that helps you recognise this connection. Only shown inside LazySEO.

Example: Webflow blog

Site ID (optional)

Not used for publishing. Leave it empty.

Collection IDrequired

The ID of the collection articles should be added to.

Example: 5f4d2c9a7b6c5d4e3f2a1b0c

API Tokenrequired

The site API token with CMS read and write access, created on the same site as the collection.

Example: a long string of letters and numbers

Site URL (optional)

The public address of your site, without a folder. LazySEO builds each article's link as Site URL + "/" + the collection's slug + "/" + the article slug, which is where Webflow serves collection pages: with the collection slug blog, a link looks like https://www.example.com/blog/my-article. Leave it empty if you don't need the link in LazySEO; articles still publish, but LazySEO has no live link to show or to send to Google Search Console.

Example: https://www.example.com

Enabled

Leave on. When it is off, LazySEO skips this integration when publishing.

Test the connection

  • Right after you save, the window shows Test the connection: click Run quick test. You can test again at any time from the integration card with Test.
  • Quick test ("Check endpoint is reachable") reads your collection with the API token and checks that it has a Rich text field for the article body and no required fields LazySEO can't fill. Webflow can't confirm write access without writing, so a token without CMS write access only shows up on the Full test or the first publish. Nothing is created.
  • On the card's Test menu, Full test ("Send a test blog post (draft)") sends a real test article titled "[TEST] LazySEO Test Article" with the slug lazyseo-test-article. In Webflow it is added as a Draft item in your collection, so it is not live. Delete it from the CMS once you have checked it.
  • If a test fails, LazySEO shows the reason it got from your platform (for example a rejected key or a missing permission). Check it against the troubleshooting section below, click Edit on the card to fix the field, and test again.

What gets published

WhatHow LazySEO handles it
NameThe article title.
SlugThe article slug. Slugs must be unique in a collection.
Body fieldThe full article body as HTML. LazySEO converts the article's Markdown to HTML (headings, lists, links, tables, code), sends articles you edited in the LazySEO editor as the HTML you saved, and drops a first heading that only repeats the title, because your collection template shows the title itself.
Summary and meta description fieldsThe meta description, written to each of these fields your collection has (shortened to the field's maximum length if needed).
Image fieldsThe article banner image, sent as an image URL for Webflow to import.
Tags fieldThe article topics as comma-separated text, only if the collection has a Plain text tags, keywords or topics field.
StatusPublished to your live site straight away (Webflow's live item endpoints), so you don't need to publish the site. The Full test creates a draft item instead.
Post URLOnly recorded when Site URL (optional) is filled in: Site URL + "/" + collection slug + "/" + item slug.
UpdatesIf the same article is published again to the same integration, LazySEO updates the existing post instead of creating a second one. If the post was deleted in Webflow in the meantime, LazySEO publishes it again as a new post.
UnpublishingUnpublishing an article inside LazySEO does not remove it from your site. Delete or unpublish the post in your platform if you need it gone.

Troubleshooting

The error says the collection "has required fields LazySEO can't fill".

The error lists the fields. Make them optional in the collection settings, then publish again. LazySEO only fills the fields listed in step 1.

The test says the collection "has no Rich Text field for the article body".

Add a Rich text field to the collection, ideally named Post Body (slug post-body).

HTTP 400 "Validation Error" that names a field.

Webflow rejected a value. The most common cause is a slug that another item in the collection already uses: change the article slug in LazySEO, or delete the old item. If the error names one of your own fields, check its type and validation settings in Webflow.

HTTP 401 ("Webflow rejected the API token").

The API Token is wrong or was deleted. Generate a new one in Site settings → Apps & integrations and paste it in again.

HTTP 403 ("The Webflow token lacks permission").

The token does not have CMS read and write access. Create a token on the same site with CMS read and write access.

HTTP 404 ("Webflow collection not found").

The Collection ID is wrong (it is not the Site ID), or the token belongs to a different site. Copy the ID again from the collection settings in the Designer.

HTTP 429 ("rate limit reached").

Webflow limits how many API requests can be made per minute. Wait a minute and use Retry on the article.

The article's tags don't appear in Webflow.

LazySEO only writes tags into a Plain text field with the slug tags, keywords or topics. Option, Reference and Multi-reference fields are skipped.

The link LazySEO shows for the article goes to a 404 page.

Set Site URL (optional) to your site's address without a folder, for example https://www.example.com. LazySEO adds the collection slug itself. If you changed the collection's URL in Webflow, the recorded link uses the collection slug Webflow reports.

Frequently asked questions

Which Webflow collection should I use?

Your blog posts collection. The Webflow Blog Posts template already has Post Body, Post Summary, Main Image and Thumbnail Image; add a Plain text field named Meta Description (and one named Tags, if you want the topics) and it has everything LazySEO fills.

Do I need to publish my Webflow site after LazySEO publishes an article?

No. LazySEO publishes each item to the live site directly. Only the Full test creates a draft item.

Do I need the Site ID?

No. The field is optional and not used. LazySEO needs the Collection ID and an API token with CMS read and write access.

Still stuck?

Email support@lazyseo.io with the error message from LazySEO and we'll help you connect.