Headaches Optimising Podia
Originally published: 18 August 2024
Sadly I may just have to give up
Optimising Podia Platform with Cloudflare: A Case Study
Introduction
As a website owner, speed and reliability are paramount, especially when your site serves as the foundation of your business. In my case, managing The Meat Medic website on the Podia platform, I encountered significant challenges with site performance, particularly with caching and content delivery.
This post outlines the steps I took to optimise my website using Cloudflare, the results I achieved, and the issues I faced along the way.
Initial Setup and Challenges
Moving to Podia
Recently, I transitioned The Meat Medic to the Podia platform. Podia is a robust and cost-effective platform designed for online courses, memberships, and digital product sales. While it offers many great features, I quickly realised that Podia’s built-in website builder lacks comprehensive image optimisation and doesn’t easily support URL images with a CDN service. This deficiency led me to explore Cloudflare’s offerings to enhance my website’s performance.
You can sign up for Podia here.
Cloudflare Initial Configuration
Initially, I turned on Cloudflare’s proxy and caching features, which promised to improve site speed by serving content from edge locations closest to users. However, enabling full caching and proxy settings led to a significant issue: critical site functions, like login and subscription sign-ups, stopped working.
First Round of Tests
I conducted a series of speed tests under various configurations:
-
Everything Default:
No proxy, no caching. The site worked fine, but it felt slow, with poor performance scores. -
Proxy Turned On:
Enabled Cloudflare proxy, and the site still worked fine. The site felt faster, but the performance scores paradoxically went down.
Incremental Changes
Here’s a summary of changes I made and their impacts:
-
Cloudflare Fonts:
Turning on Cloudflare’s font optimisation improved scores and reduced TTFB, FCP, and TBT. -
Early Hints:
Enabling Early Hints slightly reduced CLS, but overall performance seemed worse. -
Rocket Loader:
Mixed results; the site didn’t feel faster, but it remained functional. -
Browser Caching:
I overrode Podia’s cache settings, enabling browser caching. This led to improved scores and faster load times after the initial load. However, the first load was still slow (~3 seconds).
Edge Caching: A Double-Edged Sword
I attempted to use Cloudflare’s Edge Caching for faster first-load performance. Here’s what happened:
-
Enabled Edge Caching:
The site broke—subscription buttons redirected to the homepage for no apparent reason. However, the site was far faster on subsequent loads with TTFB dropping significantly (~0.2s). -
Turned Off Edge Caching:
Disabling Edge Caching fixed the broken functionality, but the site felt slower again. -
Selective Edge Caching:
I turned on edge caching for the homepage only, but there was no significant change in load times. Enabling edge caching for assets and fonts helped a bit, but FCP and LCP remained high.
Notes from Sunday 18 August 2024
Cloudflare Speed Tests With Podia Platform
-
Everything Default (7:58):
- No proxy, no caching.
- Site works fine, but feels slow with poor scores.
-
Proxy turned on (8:05 - 8:11):
- Site works fine, feels faster.
- Scores went down.
-
Turned on Cloudflare fonts (8:12-8:14):
- Scores improved.
- TTFB, FCP, and TBT down.
-
Turned on early hints (8:17-8:21):
- CLS down, but everything else seemed worse.
-
Rocket loader turned on (8:25-8:32):
- Mixed scores, site didn’t feel faster but remained functional.
-
Turned on browser caching - override Podia cache (08:39-08:41):
- Scores improved, TTFB and TBT down.
- Site felt faster after initial load but still slow on first load (~3s).
-
Turned on edge caching (8:48 - 8:49):
- Site broke (subscription buttons redirected to home).
- Significantly faster on first load and subsequent loads.
-
Turned off edge caching (8:58 - 9:00):
- Site works again but felt slower.
-
Turned to “use default Cloudflare caching behaviour if not” (9:02 - 9:03):
- Site worked fine but felt slower again.
- TTFB up (~700ms), TBT stayed low (~70ms).
-
Full caching on homepage only:
- Edge cache working for URL, but not for assets.
- No significant change in time to load.
-
Turned on edge caching for assets and fonts:
- Set wildcard to
/content-assets/*
and/cf-fonts/*
. - Images served from edge cache (CF-Cache Status: HIT).
- Minor improvements in TTFB and TBT, but FCP and LCP remain high.
- Set wildcard to
Key Takeaways
-
First Load Bottleneck:
The first load remains a challenge, with FCP and LCP stubbornly high despite various optimisations. -
JavaScript Issues:
JavaScript appears to be a major contributor to the slow FCP and LCP. -
Next Steps:
- Investigate better caching solutions based on cookie status—Cloudflare Worker attempts failed.
- Further optimise images.
- Consider Argo routing ($5/month).
- Reach out to Podia support for insights, though their knowledge seems limited on these issues.
Conclusion
Optimising a website for speed, especially on a platform like Podia with inherent limitations, is a balancing act. While Cloudflare offers powerful tools to enhance performance, they can sometimes conflict with the platform’s functionality, as I experienced with the subscription service breaking under full caching.
Moving forward, I’ll focus on refining image optimisation, exploring more advanced caching strategies, and possibly integrating Argo routing for even better performance. If you’re running a similar setup, I recommend approaching these optimisations incrementally and thoroughly testing each change.
Let me know get in touch [email protected] if you have any thoughts!
Read Count: 0