Outgrowing the Webflow CMS: item caps, nested references and collection lists

A Webflow CMS rarely breaks all at once. First a collection list stops showing every item, then a second collection is created to work around reference limits, and finally a routine import refuses to run.

Webflow's CMS is one of the best reasons to start a marketing site on the platform. A designer can create a collection for blog posts or customer stories, bind fields to a template, and hand editors a form before lunch. For a site with a few hundred items and a flat structure, it does the job cleanly.

The friction shows up two years later, when the marketing site has grown into a content library: integration directories, comparison matrices, multi-author resource hubs, localized pages, and programmatic landing pages. The ceilings you meet at that stage are architectural rather than cosmetic.

The four limits teams hit first

Webflow documents its CMS boundaries clearly, though most teams only read the fine print once a publish or an API sync fails. As of September 2026, the limits that shape a growing site are:

  1. Total CMS items and collections. Both are capped per site plan, with the caps moving between plans and changing over time. Source: Webflow pricing Every collection item across your blog, glossary, authors, integrations, changelogs, and archived campaigns counts toward the same ceiling.
  2. Collection list rendering on a page. A single Collection List element renders up to 100 items before pagination or a workaround is required. Source: Collection list element Directory pages, full sitemaps, and filterable partner catalogs run into this immediately.
  3. Bulk API writes and rate limits. Scripted syncs through the Data API write up to 100 items per request, with rate limits of 60 a minute, or 120 on a CMS-capable plan. Source: Webflow Data API rate limits When your product database or CRM syncs thousands of records into Webflow, the sync pipeline becomes a queue you have to babysit.
  4. Custom code character caps. When teams hit native CMS filtering or relational limits, they usually reach for custom scripts in the page settings, which are capped at 50,000 characters. Source: Custom code in head and body tags

Why reference limits hurt before item limits do

In practice, most marketing teams feel the relational ceiling long before they hit their final item count.

In a flat CMS, a page owns its fields. When you want reusable building blocks, such as a pricing FAQ shared across four product pages, an author bio with social links, a compliance footnote, or a comparison table row used in both a /vs/ page and an industry guide, you have to wire them through reference and multi-reference fields.

Once a template hits Webflow's reference and nesting limits on a page, teams start duplicating fields instead: copying the same CTA text into twelve items, or creating Feature 1 Title, Feature 1 Body, Feature 2 Title, Feature 2 Body columns on a collection. At that point the CMS is no longer modeling your content; it is storing layout workarounds.

Flat collections vs a document graph

Staying in Webflow CMS

  • Prune old items, merge collections, or upgrade to a custom Enterprise tier.
  • Use client-side JavaScript libraries to stitch paginated collection lists together in the browser.
  • Flatten nested relationships into numbered columns on a single collection item.
  • Keep visual Designer binding for every collection template.

Worth doing when you are just under the cap and the content structure is genuinely flat.

Moving to Sanity and Astro

  • Model content as reusable documents and typed objects with no per-template reference ceiling.
  • Query the exact slice of data needed at build time with GROQ, shipping zero client-side filtering scripts.
  • Share sections, FAQs, authors, and proof points across every page family from one source.
  • Render static HTML on Cloudflare with instant page loads regardless of collection size.

Worth doing when the content model has outgrown flat tables and workarounds are slowing shipping.

Working around collection caps inside a page builder adds script weight and duplicate fields. Moving the model to Sanity turns repeated fields back into references.

When to fix the Webflow CMS in place

Not every site near its item cap needs a migration. Before planning a move, check whether a cleanup solves it:

  • Delete dead collections and draft graveyards. Old event registrations, retired campaign tags, and unreferenced author records often account for a quarter of the item count.
  • Consolidate taxonomy collections. Five separate tag collections (Blog Tags, Case Study Tags, Resource Topics, Industry Labels, Product Categories) can often become one shared collection or a select field.
  • Use server-rendered pagination intentionally. If a directory does not need all items in the DOM at once, native pagination avoids client-side list-stitching scripts.

If pruning gets you back under half of your plan's ceiling and editors are happy with the fields, stay on Webflow. See when to leave Webflow, and when to fix the site instead.

How a Webflow CMS to Sanity migration actually runs

When the content model itself is the bottleneck, moving to The Everbase Stack (Astro or Next.js, with Sanity, on Cloudflare or Vercel) replaces the flat collection tables with a structured document graph without changing your public URLs.

The process follows four deliberate steps, detailed in Webflow to Sanity migration: content, references and publishing and Webflow to Astro in code:

  1. Export and inventory every collection. Pull the full collection schema and item payloads through the Webflow Data API (paged at 100 items per request), alongside a complete crawl of the live URLs.
  2. Design the Sanity schema around how editors work. Replace numbered workaround columns (stat_1_value, stat_2_value) with proper array blocks and document references. See modeling content in Sanity for a marketing site.
  3. Transform HTML rich text into Portable Text. Convert Webflow rich-text fields into clean, validated Portable Text blocks, rehost every image asset into Sanity's asset pipeline, and verify every internal link.
  4. Verify URL parity and cut over. Match every collection item's slug and path against the pre-migration inventory so existing rankings and backlinks land on the exact same address, or a tested 301 redirect. See how to protect SEO during a website migration.

Checking your own site's ceiling

If your team is rationing CMS items, stitching collection lists together with third-party scripts, or facing an Enterprise upgrade just to add a collection, compare the numbers first:

What is in this

Gemin Pak

Founder

Next step

Let me plan your next step.

Send your site

I can scope a migration. Send a brief and I will reply by email with next steps.