Skip to main content

Fixing "Your theme has reached Shopify's 300-block limit"

A Shopify limit on how many blocks a theme's templates can hold. Free up blocks in your theme, or publish to a lighter theme.

Written by Eddie Lavandera

Your theme's templates hold as many blocks as Shopify permits, so Atlas cannot add the ones a new page needs. The full message is:

Your theme has reached Shopify's 300-block limit. We can't add the blocks Atlas needs to publish this page. Switch to a compatible theme or contact support for help.

This is a Shopify platform limit, not an Atlas one. No app can raise it. The fix is to free up blocks in your theme, or to publish into a theme with more room.

In this article:


What the limit actually is

Shopify caps the number of blocks a theme's JSON templates can contain at 300. Every section and every block inside a section counts.

Themes accumulate these over time: sections added and hidden rather than deleted, templates duplicated for one product and forgotten, blocks left behind by apps you have uninstalled.

ℹ️ Hidden sections still count. Hiding a section in the theme editor removes it from the page but not from the template, so hiding is not a way to free up blocks.


Step 1: Find where your blocks are

  1. In your Shopify admin, go to Online Store, then Themes, and select Customize.

  2. Use the template selector at the top to move through your templates: home page, product templates, collection templates, page templates.

  3. On each, look at how many sections and blocks it holds.

The usual offenders, in order:

Where

Why

The home page

Usually the busiest template in any theme

Duplicate product templates

Created for one product and never removed

Old landing or campaign page templates

Built for a promotion that ended

Blocks from uninstalled apps

Removed apps often leave their blocks behind


Step 2: Remove what you do not need

Delete rather than hide. Only deleting frees a block.

Safe places to start:

  • Sections you hid months ago and never brought back

  • Product templates no product uses any more

  • App blocks belonging to apps you no longer have installed

  • Duplicate templates left over from experiments

⚠️ Work on a duplicate of your theme, not the live one. Duplicate the theme in Shopify, clean up the copy, preview it, then publish the copy. Deleting sections directly from a live theme changes your storefront immediately with no undo.


Step 3: Try a duplicate theme

Sometimes the fastest route is a clean start rather than an archaeological dig.

  1. Duplicate your theme in Shopify.

  2. On the copy, delete the templates and sections you know are unused.

  3. Enable the Atlas extensions on the copy.

  4. Publish your Atlas page into the copy.

  5. Preview, and if it looks right, publish the copy.


Step 4: Consider a lighter theme

If your theme is close to the limit before you have added anything of your own, it is a heavy theme and this will keep happening.

A current theme from the Shopify Theme Store with fewer built-in sections leaves far more room. Free themes including Dawn are notably light.


Why Atlas needs blocks

Each page Atlas publishes is built from sections and blocks in your theme, the same way a page you built by hand in the theme editor would be. That is what makes an Atlas page editable in Shopify afterwards rather than a black box.

The trade-off is that Atlas pages consume blocks like any other page. A page with many sections uses more, so a long landing page needs more room than a simple product page.

💡 If you are close to the limit and need one page published now, publishing a shorter page can get you under it. Hide sections in the Atlas editor before publishing to reduce what the page needs.


If you cannot free enough

Start a chat from the bubble in the bottom right of Atlas, or email support@helloatlas.io. Either way, include:

  • your store URL

  • your theme name

  • the page you are trying to publish

  • roughly how many templates and sections your theme has

Support can look at what the page needs and whether a smaller configuration would fit.


Next steps

Did this answer your question?