Title: Missing Elementor CSS pages when using page cache
Last modified: December 19, 2025

---

# Missing Elementor CSS pages when using page cache

 *  [T4ng](https://wordpress.org/support/users/schwipps/)
 * (@schwipps)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/)
 * Hi there,
 *  [@jamieburchell](https://wordpress.org/support/users/jamieburchell/), it’s been
   a while 😅
 * I’m opening a new topic about [this non resolved issue](https://wordpress.org/support/topic/missing-stylesheets-referenced-in-html-race-condition-2/).
 * Long story short: when using W3TC’s page cache functionnality, after updating
   Elementor, or deploying a new website version (which wipes out the cache and 
   non-repository saved files, some Elementor pages miss the related CSS, thus look
   broken. After a couple hours, clearing caches back and forth, things seem to 
   resolve by itself.
 * Last week, I updated W3TC and Elementor to their latest versions, after not updating
   the plugins for a too long period. While reading changelogs, I noticed W3 Total
   Cache, in its latest version, claims adressing caching issues with Elementor.
   So I though: “Yay, they finally soved it!”. Unfortunately, the results is even
   worse than before. Now, after deploying, when using page cache, ALL my Elementor
   pages are broken.
 * I tried one earlier W3TC version: same results.
 * So I went for further testings, again (interesting since I now have a more consistent
   behavior), and found this:
    1. Right after a deployment (everything is purged), all my Elementor pages are 
       broken.
    2. If, a few seconds after loading a broken page, I “Purge all caches” (W3TC) and
       then reload a page I just attempted to display, then it renders correctly (A
       page I didn’t just attempt to render will be brocken though).
    3. However, if I also purge the Elementor CSS, the same page is broken again.
    4. I checked by switching to Elementor CSS file mode (instead of inline): the CSS
       is generated quite quickly as well, visible in the /uploads/elementor/css/ folder,
       with the expected content. The problem is that this files seems to be always
       created just too late (not SO late but still too late), right after the page’s
       HTML is cached, so with the missing inline CSS, or no CSS filepath declaration,
       since it’s probably not provided if the file is not yet generated; thus after
       the HTML page cache is saved, again.
 * I did them back and forth: my tests are now consistent. So I’m quite confident
   this explanation makes sense.
 * One solution could be to use the Elementor CSS file method + keeping the content
   of the uploads/elementor/css/* folder when deploying. So that the files are still
   ready to serve.
 * Unfortuntately, this won’t be sufficient, for 2 reasons:
    - Elementor wipes out the CSS during each Elementor update. Considering Elementor’s
      high update frequency, we can assume we’ll still often face the issue…
    - There’s a chance Elementor needs to regenerate the CSS files after the update,
      so that the maintained files might be outdated, or break the pages.
 * So… The real solution, would be leveraging an Elementor signal which would tell:“
   Hey Cache plugin! It took a bit, but my CSS is now ready >> you can now render
   the page and cache it!).
 * Considering you W3TC and Elementor both count amongst the most used WordPress
   plugins, is there a chance you guys team up to build such a process? So that 
   we can take advantage of a powerful pagebuilder + a lightening fast cache plugin?
 * Thanks

Viewing 15 replies - 1 through 15 (of 23 total)

1 [2](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/page/2/?output_format=md)
[→](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/page/2/?output_format=md)

 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18590968)
 * Hey [@schwipps](https://wordpress.org/support/users/schwipps/). Happy 2025 😀
 * The W3TC plugin now calls Elementor’s regenerate CSS function when purging all
   caches, so this makes the problem happen every time for me on deployment now.
   Unless that change is rolled back, I’ll need to change the deployment to manually
   call each of the purges (object, minify, page) I think.
 * You’re right that Elementor flushes its CSS during database upgrades, which usually
   then also causes the issue.
 * Like you, I need to keep purging the page cache after this has happened, then
   visit some pages until they render correctly. Almost all of the time now one 
   page will look fine, and another will be missing styles, and it’s just a case
   of keep purging the page cache until every template renders correctly.
 * I have tried both internal and external embedding – it makes no difference.
 * What I do not understand is how it’s possible that the final HTML cached by W3TC
   is missing the stylesheet links or inline CSS. That same HTML delivered to the
   browser without going through W3TC would have the missing entries, so why doesn’t
   W3TC capture the same?
 * Anecdotally, I no longer use Elementor for new projects – have moved to Bricks.
   The same setup on Bricks works flawlessly, but then Bricks generates its CSS 
   ahead of time (or at least, the option to do so works properly, unlike Elementor’s“–
   regenerate” switch which randomly misses some CSS like custom fonts).
    -  This reply was modified 9 months, 3 weeks ago by [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/).
    -  This reply was modified 9 months, 3 weeks ago by [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/).
 *  Thread Starter [T4ng](https://wordpress.org/support/users/schwipps/)
 * (@schwipps)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18590982)
 * [@jamieburchell](https://wordpress.org/support/users/jamieburchell/) you say 
   W3TC now calls Elementor’s regenerate CSS function when purging all caches. That’s
   pretty bad.
   **Do you know since which version?**
 * By the way, we’re also moving away from Elementor, but I need a solution to keep
   the website fine untill we switch for real. We’re moving to Gutenberg/custom 
   blocks. Bricks seems great, but we didn’t want to rely on an external page builder.
   We’ll see how it goes.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18590990)
 * [@schwipps](https://wordpress.org/support/users/schwipps/)
 * It was introduced in [W3TC 2.8.11](https://github.com/BoldGrid/w3-total-cache/releases/tag/2.8.11)
 * > Enhancement: Flush Elementor cache when all caches are flushed
 * The code change is [here](https://github.com/BoldGrid/w3-total-cache/commit/80a0764095987ecaaed6e16d2909b33574684ec6)
   discussion [here](https://github.com/BoldGrid/w3-total-cache/pull/1118).
 * Off topic but I think producing websites in MS Word would be better than using
   Elementor 😀
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591006)
 * Reading through [the discussion](https://github.com/BoldGrid/w3-total-cache/issues/1093)/
   reason why that change was made in 2.8.11 it actually sounds like the original
   author is just running in to this same issue we’ve been having for years. Certainly
   the methods used to fix the issue are the same:
 * >  - One is disable W3 Total Cache and everything works again.
   >  - two is run the following command in command line: wp elementor flush-css–
   >    regenerate
   >  - Three is disable Page Cache in the W3 Total Cache Settings.
 *  Thread Starter [T4ng](https://wordpress.org/support/users/schwipps/)
 * (@schwipps)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591016)
 * > It was introduced in [W3TC 2.8.11](https://github.com/BoldGrid/w3-total-cache/releases/tag/2.8.11)
 * > Enhancement: Flush Elementor cache when all caches are flushed
 * > The code change is [here](https://github.com/BoldGrid/w3-total-cache/commit/80a0764095987ecaaed6e16d2909b33574684ec6)
   > discussion [here](https://github.com/BoldGrid/w3-total-cache/pull/1118).
 * Thanks!
 * > Off topic but I think producing websites in MS Word would be better than using
   > Elementor 😀
 * Yeah… Projects evolve, plugins as well. Elementor was promising at first but 
   seem to have lost themselves in adding useless functionnalities, rather than 
   fixing what’s essential. At least for what I need now.
   V4 seem to address some
   of these issues, but it’s just way too late. Now we just value structure and 
   reliability over shine.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591287)
 * Hey [@schwipps](https://wordpress.org/support/users/schwipps/) I may have a rudimentary
   patch/fix for Elementor to solve this. Would you mind testing it?
 * Replace elementor/core/files/css/base.php with this:
 * [https://pastebin.com/raw/Z2NdizSE](https://pastebin.com/raw/Z2NdizSE)
 * I’m reproducing the issue without W3TC enabled at all now – Elementor returning
   the HTML without the references to the stylesheets until the second page load.
   This crude fix seems to be working. If it works for you it could help pinpoint
   the issue.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591534)
 * [@schwipps](https://wordpress.org/support/users/schwipps/) Digging a bit deeper
   as to why the workaround patch posted above works and it comes down to this: 
   When [this](https://github.com/elementor/elementor/blob/910eba7b1cd9643763b91ac61539470db7432ec7/core/files/css/base.php#L157)
   meta update happens, when it is subsequently read [here](https://github.com/elementor/elementor/blob/910eba7b1cd9643763b91ac61539470db7432ec7/core/files/css/base.php#L231)
   it’s not pulling the information that was just saved. Even with object caches
   disabled, the saved data is just not fetched and it becomes necessary to retry
   the operation. I have no idea why, and to be honest I’m not even going to bother
   trying to open this as an issue with Elementor since it’ll get immediately closed
   or ignored.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591590)
 * [@schwipps](https://wordpress.org/support/users/schwipps/) Note that also unfortunately
   the object cache needs to be disabled in addition to the above patch.
 *  Thread Starter [T4ng](https://wordpress.org/support/users/schwipps/)
 * (@schwipps)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18591913)
 * > I’m not even going to bother trying to open this as an issue with Elementor
   > since it’ll get immediately closed or ignored.
 * Thanks for taking time digging this issue. Let’s hope Elementor takes a look 
   at it as well.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 3 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18592357)
 * [@schwipps](https://wordpress.org/support/users/schwipps/) The good news is the
   combination of disabling W3TC’s object cache and this [patched Elementor file](https://pastebin.com/raw/Z2NdizSE?090825)
   fixes the problem. I’ve updated the patch to be less crude. It would be great
   if W3TC/Elementor devs look at this, but at least for Elementor that’s highly
   unlikely to happen in my experience.
 * I’m not too bothered about disabling object cache. There’s not much point using
   it with full page caching anyway.
    -  This reply was modified 9 months, 3 weeks ago by [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/).
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 2 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18593723)
 * [@schwipps](https://wordpress.org/support/users/schwipps/) I had an hour to waste
   so [opened a ticket](https://github.com/elementor/elementor/issues/32226) 🙂
 * Did the combination of the Elementor patch and disabling the W3TC object cache
   resolve the issue for you too?
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 2 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18596384)
 * Good news [@schwipps](https://wordpress.org/support/users/schwipps/) I came up
   with a one-line Elementor patch that will fix this even when using object cache.
   I have this patch being applied during composer install and so far it’s fixed!
 *     ```wp-block-code
       --- web/app/plugins/elementor/core/files/css/post.php.old	2025-08-12 16:45:30.350894002 +0100+++ web/app/plugins/elementor/core/files/css/post.php	2025-08-12 16:42:10.490082245 +0100@@ -112,6 +112,7 @@ 	 * @return array Post CSS file meta data. 	 */ 	protected function load_meta() {+		wp_cache_delete( $this->post_id, 'post_meta' ); # https://github.com/elementor/elementor/issues/32226 		return get_post_meta( $this->post_id, static::META_KEY, true ); 	}
       ```
   
 *  Thread Starter [T4ng](https://wordpress.org/support/users/schwipps/)
 * (@schwipps)
 * [9 months, 2 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18596396)
 * Hi [@jamieburchell](https://wordpress.org/support/users/jamieburchell/),
 * Great you came up with a working patch 🙂
 * Unfortunately, I won’t be able to test it by the end of the month.
 * I’ll keep you posted
 *  Plugin Author [Joe Cartonia](https://wordpress.org/support/users/joemoto/)
 * (@joemoto)
 * [9 months, 2 weeks ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18599298)
 * We see success when flushing the object cache after flushing the Elementor cache.
   Feel free to test the fix in [pull request #1158](https://github.com/BoldGrid/w3-total-cache/pull/1158)
   and let us know if there are any issues.
 *  [Jamie Burchell](https://wordpress.org/support/users/jamieburchell/)
 * (@jamieburchell)
 * [9 months, 1 week ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/#post-18602879)
 * Unfortunately it’s a bit more complicated than that [@joemoto](https://wordpress.org/support/users/joemoto/)
   due to the race condition encountered during simultaneous requests. The patch
   at the end of [my Elementor ticket](https://github.com/elementor/elementor/issues/32226)
   resolves it however. I have updated that ticket with a full deep dive in to what’s
   going on.

Viewing 15 replies - 1 through 15 (of 23 total)

1 [2](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/page/2/?output_format=md)
[→](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/page/2/?output_format=md)

The topic ‘Missing Elementor CSS pages when using page cache’ is closed to new replies.

 * ![](https://ps.w.org/w3-total-cache/assets/icon-256x256.png?rev=1041806)
 * [W3 Total Cache](https://wordpress.org/plugins/w3-total-cache/)
 * [Frequently Asked Questions](https://wordpress.org/plugins/w3-total-cache/#faq)
 * [Support Threads](https://wordpress.org/support/plugin/w3-total-cache/)
 * [Active Topics](https://wordpress.org/support/plugin/w3-total-cache/active/)
 * [Unresolved Topics](https://wordpress.org/support/plugin/w3-total-cache/unresolved/)
 * [Reviews](https://wordpress.org/support/plugin/w3-total-cache/reviews/)

## Tags

 * [css](https://wordpress.org/support/topic-tag/css/)
 * [pagecache](https://wordpress.org/support/topic-tag/pagecache/)

 * 23 replies
 * 5 participants
 * Last reply from: [T4ng](https://wordpress.org/support/users/schwipps/)
 * Last activity: [5 months, 1 week ago](https://wordpress.org/support/topic/missing-elementor-css-pages-when-using-page-cache/page/2/#post-18762090)
 * Status: not resolved