Mixed Content Errors: The SSL Problem That's Still Hurting Ecommerce Stores in 2026
Mixed content errors happen when your HTTPS store loads HTTP resources. Learn why browsers block them, how they hurt SEO, and how to find and fix every instance.
You migrated your store to HTTPS years ago. Your SSL certificate is valid. The padlock shows in the browser. So why is Chrome blocking some of your images, and Google flagging security issues in Search Console?
Mixed content errors. They happen when your HTTPS page loads resources (images, scripts, stylesheets, fonts) over plain HTTP. It's one of the most common issues we find in ecommerce health scans — and one of the easiest to fix once you know where to look.
What Is Mixed Content?
When a page served over HTTPS includes resources loaded over HTTP, that's "mixed content." There are two types:
Active Mixed Content (Blocked by Default)
Scripts, stylesheets, iframes, and XMLHttpRequests loaded over HTTP. Browsers block these entirely because they could be modified in transit by an attacker. If your checkout page loads a payment script over HTTP, it won't load at all.
Passive Mixed Content (Warning)
Images, audio, and video loaded over HTTP. Browsers display these but show a warning (broken padlock icon, "Not Secure" label). Customers see the warning and question whether your store is safe to buy from.
Why It Still Happens
Most mixed content issues stem from historical references that were never updated:
- Hardcoded HTTP URLs in product descriptions. You uploaded product images years ago when your store was still on HTTP. The URLs were saved as http:// in your database.
- Third-party widgets. Chat widgets, review badges, social media embeds, and analytics scripts that still reference HTTP URLs.
- Email templates. Your transactional email templates may reference HTTP image URLs that were never updated after the HTTPS migration.
- CDN configuration. Your CDN serves content over HTTP because the origin was configured before the HTTPS migration.
- CSS and theme files. Background images, font imports, or icon references using absolute HTTP URLs in your theme's CSS.
- CMS content. Blog posts, landing pages, and rich text fields often contain absolute HTTP URLs to images and links.
The Impact on Your Store
Broken Functionality
Active mixed content is blocked entirely. If a critical script or stylesheet loads over HTTP, it won't work. This can break checkout forms, product configurators, and interactive elements.
Trust Signals
When browsers show a broken padlock or "Not Secure" warning, customers notice. In ecommerce, trust is everything. A "Not Secure" label next to your checkout page is a conversion killer.
SEO Impact
Google has confirmed that HTTPS is a ranking signal. Mixed content undermines your HTTPS status. Google Search Console flags mixed content as a security issue, and persistent issues can affect your rankings.
How to Find Mixed Content
Mixed content is hard to find manually because it can be buried in:
- Product descriptions (in the database, not in template files)
- Third-party script tags
- CSS files (background-image URLs)
- CMS blocks and widgets
- Email templates
You need a scanner that checks every page and every resource reference. StoreVitals detects mixed content automatically — we check every page we crawl for HTTP resource references and flag them with the specific URL and page where we found them.
How to Fix It
1. Update Hardcoded URLs
Search your database for http:// references and update them to https:// (or better, use protocol-relative URLs like //example.com/image.jpg). Most platforms have database search-and-replace tools.
2. Use Protocol-Relative URLs
Instead of http://cdn.example.com/image.jpg, use //cdn.example.com/image.jpg. This automatically uses whatever protocol the page is loaded with.
3. Add Content-Security-Policy Header
Add a CSP header with upgrade-insecure-requests directive. This tells browsers to automatically upgrade HTTP requests to HTTPS:
Content-Security-Policy: upgrade-insecure-requests
This is a quick fix while you update the actual URLs.
4. Update Third-Party Scripts
Check every third-party script, widget, and embed on your store. Most providers have HTTPS versions available. Update the script tags to use HTTPS URLs.
5. Fix CDN Configuration
Ensure your CDN is configured to serve content over HTTPS. Most CDN providers (Cloudflare, Fastly, CloudFront) support this — it may just need to be toggled on.
Prevention
After fixing existing mixed content:
- Set up a
Content-Security-Policyheader that blocks HTTP resources - Configure your CMS to default to HTTPS URLs for uploaded media
- Run automated health scans weekly to catch new mixed content before it affects customers
StoreVitals monitors for mixed content on every scan. Run a free scan to check your store right now.