ZenWeb - Blog - Mixed Content Warnings After HTTPS? How to Fix Them

Mixed Content Warnings After HTTPS? How to Fix Them

July 25, 2026

Share this post:

Mixed Content Warnings After HTTPS? How to Fix Them
TL;DR: Mixed content warnings show up when your HTTPS page still loads some files — images, scripts, stylesheets — over insecure HTTP, so the browser drops the padlock or blocks the file. After an HTTPS move it almost always comes from hard-coded http:// links in your content, theme, or database. Fix it by finding every insecure URL, changing it to https://, and adding an upgrade-insecure-requests rule. Most sites are clean within a day.

You moved your site to HTTPS, expected a green padlock, and instead Chrome says “Not secure” — or half your layout has broken. That is mixed content, one of the most common things Malaysian business owners bring to ZenWeb after a rushed migration.

The good news: mixed content is almost always a quick fix, not a rebuild. Our SEO team clears it on client sites most weeks, and the pattern is nearly always the same handful of causes. If your rankings dropped suddenly right after the switch to HTTPS, a mixed content fault is a prime suspect worth ruling out first.

The video below fixes mixed content on a live WordPress site; the guide after it explains what the warning means, why the HTTPS move triggers it, and how to clear every insecure file.

How to Fix the Mixed Content Warning in WordPress

Source video: "How to Fix the Mixed Content Warning in WordPress" on YouTube.

1. Introduction

A mixed content warning is rarely serious. It simply means your page is served over HTTPS, but a few files on it still load over plain HTTP — and a secure page is only as safe as its least secure file.

This guide keeps it practical: what mixed content is, why the HTTPS move sets it off, where it hides, how it hurts you, and a clear step-by-step fix. By the end you will know exactly what to change and in what order.


2. What Mixed Content Means After Switching to HTTPS

Quick Answer: Mixed content means an HTTPS page is loading one or more files — an image, script, stylesheet, or font — over insecure HTTP. The browser can no longer promise the whole page is secure, so it removes the padlock, shows a “Not secure” note, or blocks the file outright.

These leftover files are usually harmless images or an old script, not an attack. But the browser cannot tell the difference, so it warns the visitor anyway. In bad cases it breaks the page — the reason a mixed content fault sometimes looks like a sudden drop in rankings when it is really a rendering problem.


3. Active vs Passive Mixed Content: What Chrome Does

Quick Answer: There are two types. Passive mixed content (images, audio, video) only displays, so Chrome tries to auto-upgrade it and blocks it only if that fails. Active mixed content (scripts, stylesheets, iframes, fonts) can control the page, so the browser blocks it outright — which is why layouts break.

Knowing which type you have tells you how urgent the fix is. Passive faults mostly cost you the padlock; active faults can break the page. Per Google’s web.dev guidance, browsers now try to upgrade insecure requests automatically, but you should never rely on that as your fix.

Active vs Passive Mixed Content, and How Chrome Handles Each
Active vs passive mixed content: examples, Chrome handling, and risk.
TypeExample filesWhat Chrome doesRisk
Passive (display)Images, video, audioTries to auto-upgrade to HTTPS; blocks only if that failsLower — loses the padlock
ActiveScripts, stylesheets, iframes, fonts, AJAX/fetchBlocked outright, no upgrade attemptHigher — breaks the page

Source: browser mixed-content behaviour, per web.dev, 2024-2026.

Passive faults are the most common, because images carry over from the old HTTP site most easily. If your images are not ranking on Google either, a blocked or insecure image source is worth checking as part of the same clean-up.

Key takeaway: Passive mixed content mostly costs the padlock; active mixed content gets blocked and breaks the page. A broken layout usually means an active file is still on HTTP.

4. Why It Happens After an HTTPS Migration

Quick Answer: Installing an SSL certificate secures the connection, but it does not rewrite the links already saved on your site. Every http:// URL sitting in your content, theme files, and database stays exactly as it was — and each one now loads insecurely on your new HTTPS pages.

An HTTPS move changes how the page is delivered, not what is saved inside it. Old posts, image links, and settings still point to the http:// version of your files, and the certificate cannot reach in and fix them. Common triggers include:

  • Absolute HTTP links in old content. Images and links saved as http://yoursite.com/... before the move stay that way.
  • Theme and plugin defaults. Some hard-code http:// for fonts, icons, or scripts.
  • External resources. A map, social widget, or old third-party script that only offers HTTP.
  • Settings left on HTTP. The site URL, canonical tags, or sitemap still using the old prefix.

This is the same class of fault that can cause a wider traffic crash after a site migration — the move itself is fine, but the leftover links quietly cause problems.

Key takeaway: The certificate secures the connection but never rewrites saved links. Mixed content is simply your old http:// URLs surfacing on new HTTPS pages.

Just moved to HTTPS and something looks off?

We run a full post-migration check so nothing slips through. See our SEO services →


5. Where Mixed Content Hides on a Migrated Site

Quick Answer: On most migrated sites, mixed content hides in a predictable order. Hard-coded links inside old posts and pages are the biggest source, followed by theme and plugin assets, then images, then external embeds. Knowing the order tells you where to look first.

Across the post-migration audits we run for Malaysian SME sites, insecure files cluster in the same few places:

Where Mixed Content Hides, by Share of Insecure Files Found
Share of insecure files by location on migrated sites.
Where it hidesShare of insecure files
Hard-coded links in posts & pages (database)

36%

Theme & plugin assets (CSS, JS, fonts)

23%

Images in content & media library

18%

External embeds & third-party widgets

13%

Menus, widgets & hard-coded headers

10%

Source: ZenWeb client audits, Malaysian SME sites, 2024-2026. Directional, not guarantees.

Fix the database first and you clear most of it. Blocked scripts and stylesheets can also stop Google rendering a page, one reason pages sometimes will not get indexed after a move.

Key takeaway: Most insecure files sit in your database content and theme assets, not in exotic places. Clean those two first and the padlock usually returns.

6. How Mixed Content Hurts Rankings, Trust and Speed

Quick Answer: Mixed content rarely causes a direct penalty, but it hurts three ways: the “Not secure” label scares off visitors, blocked scripts and styles break pages and slow them down, and broken rendering can stop Google seeing your content. Together those weaken conversions and rankings.

HTTPS itself is a confirmed, if lightweight, ranking factor — Google has treated HTTPS as a ranking signal since 2014. The bigger costs, though, are indirect:

  • Lost trust. A “Not secure” warning in the address bar makes visitors hesitate, especially before a form or payment.
  • Broken layouts. Blocked CSS and JavaScript can wreck how a page looks and works, which pushes people to leave.
  • Slower pages. Retrying and upgrading insecure files adds delay, dragging your Core Web Vitals.

Because the symptoms are indirect, mixed content is easy to misread as ordinary day-to-day ranking movement when the real cause is an insecure file breaking the page.

Key takeaway: The direct SEO hit is small, but lost trust, broken pages, and slower speed damage conversions and rankings. Clearing mixed content protects all three.

7. How to Find Every Mixed Content Warning

Quick Answer: The fastest way to find mixed content is your browser’s developer console. Open the flagged page, press F12, and read the Console tab — every insecure file is listed as a “Mixed Content” message with its exact http:// URL. For a whole site, a crawler lists them all in one pass.

List every insecure file before you change anything. Use these methods, quickest first:

  • Browser console. Press F12, open Console, reload the page, and read each “Mixed Content” line — it names the exact file.
  • Page source search. View the page source and search for http:// to spot insecure image, script, or link references.
  • Site-wide crawl. A crawler checks every page at once, so nothing hides on a post you forgot.
  • Search Console. Watch for a rise in crawl errors in Search Console that lines up with the migration date.
Key takeaway: The browser console finds mixed content on a single page in seconds; a full crawl catches the rest. List every insecure file before you change anything.

8. How to Fix Mixed Content, Step by Step

Quick Answer: Fix mixed content by finding every insecure file, updating each http:// URL to https:// in your content and theme, running a database search-and-replace, adding an upgrade-insecure-requests rule, then re-testing with caches cleared. Most sites clear in an afternoon.

How to fix mixed content warnings after an HTTPS move

Six steps, in order, that take a site from “Not secure” back to a full padlock.

  1. Inventory every insecure file. Use the console and a crawl to list all http:// resources before touching anything.
  2. Update hard-coded links. Change http:// to https:// in content, theme files, and settings such as the site URL.
  3. Run a database search-and-replace. Swap http://yourdomain for https://yourdomain across the database to clear the bulk in one pass.
  4. Add the upgrade rule. Set the upgrade-insecure-requests Content Security Policy so any missed file is upgraded automatically.
  5. Fix external embeds and the CDN. Update maps, widgets, and CDN URLs to HTTPS; drop anything that only offers HTTP.
  6. Re-test and clear caches. Purge the browser, site, and CDN caches, then re-check each page type until the console is clean.

Always back up first and change the database with a proper tool, never by hand. If you would rather not touch it, our SEO team handles the clean-up safely.

Key takeaway: Inventory, update links, search-and-replace the database, add the upgrade rule, fix embeds, then re-test with caches cleared. In that order it clears fast and stays cleared.

Nervous about editing the database?

We do the search-and-replace and full re-test for you, with a backup first. Get help fixing your HTTPS issues →


9. Fixing Mixed Content in WordPress

Quick Answer: On WordPress, set both the WordPress Address and Site Address to HTTPS under Settings → General, run a database search-and-replace tool to swap old http:// URLs for https://, then use an SSL fixer plugin only as a temporary safety net while you confirm the real links are clean.

Most Malaysian SME sites run on WordPress, so the fix is well trodden. The reliable order is settings first, then the database, then a plugin only if needed:

  • Update the two URLs. Under Settings → General, make sure both address fields use https://.
  • Search-and-replace the database. A trusted replace tool swaps every old URL in one pass — back up first.
  • Force HTTPS with a redirect. Redirect all HTTP requests to HTTPS so old links never load insecurely.
  • Use a fixer plugin as a stopgap. An SSL fixer masks the symptom; treat it as temporary, not the real fix.
Key takeaway: In WordPress, fix the settings and database first; keep any SSL fixer plugin as a short-term safety net, not the permanent solution.

10. How Often HTTPS Migrations Hit Mixed Content

Quick Answer: How often mixed content appears depends almost entirely on how the migration was done. Rushed DIY switches hit it most; plugin-only “force SSL” setups are close behind; a planned migration with a proper audit rarely does. The method predicts the mess.

Looking across the migrations we audit, the pattern is consistent: the less planning, the more mixed content.

Share of Migrated Sites With Mixed Content, by Migration Method
Share of migrated sites with mixed content, by migration method.
How the site was migratedSites with mixed content
DIY manual HTTP→HTTPS switch

71%

“Force SSL” plugin only, no clean-up

46%

Host or CDN one-click SSL, no audit

33%

Planned migration with a full audit

9%

Source: ZenWeb migration audits, Malaysian SME sites, 2024-2026. Directional, not guarantees.

The takeaway is not “never DIY” — it is “audit after you switch.” The same lack of a post-migration check is what turns a clean move into the sort of mess behind a rankings drop after a redesign.

Key takeaway: Rushed and plugin-only migrations hit mixed content far more often than planned, audited ones. A quick audit after switching is the cheapest insurance you can buy.

11. Time to Fix Mixed Content, by Method

Quick Answer: Most mixed content is fixed in under a day. An upgrade-insecure-requests rule buys a clean padlock in under an hour as a stopgap; a database search-and-replace clears the bulk in one to three hours; a full manual audit takes up to a day.

Match the method to your site so you neither over-engineer a small blog nor rush a big store:

Typical Time to Fix Mixed Content, by Method
Typical time to fix mixed content, by method.
MethodTypical timeBest for
Add upgrade-insecure-requestsUnder 1 hourA fast interim safety net
Database search-and-replace1–3 hoursThe bulk of hard-coded links
SSL / mixed-content fixer plugin30–60 minSmall sites, non-technical owners
Full manual audit + theme/CDN fixHalf to full dayLarge, custom, or repeat-offender sites

Source: ZenWeb operational data, 500+ Malaysian SME campaigns, 2024-2026. Typical ranges, not guarantees.

Key takeaway: A database search-and-replace plus an upgrade rule clears most small-business sites in an afternoon. Reserve the full-day audit for large or custom builds.

Want it fixed properly the first time?

We clear mixed content, retest every page type, and confirm the padlock holds. Explore our SEO services →


12. Fix It Yourself, or Bring in an SEO Team?

Quick Answer: Fixing mixed content on a small WordPress site is a safe DIY job with a backup and a search-and-replace tool. Bring in help when the site is large or custom, the warning keeps returning, or you are not comfortable editing the database.

Decide by how complex the site is and how comfortable you are with the database:

  • Do it yourself when the site is small, you can back up, and the console lists only a handful of insecure files.
  • Get help when the site is large or custom, the warning returns after each fix, or the checkout and forms are affected.

At ZenWeb, we clear mixed content, confirm every page type is secure, and make the fix stick. If the “Not secure” label is costing you enquiries, our SEO team can sort it and check your wider technical health too.

Key takeaway: Small sites are a safe DIY fix; large, custom, or relapsing sites are worth handing to a team. Either way, do not leave the padlock broken.

13. Conclusion

Mixed content warnings after an HTTPS move look alarming but are usually simple. Your connection is secure; a few old http:// files just have not caught up. Find them, switch them to https://, add an upgrade rule as a net, and re-test with caches cleared.

Fix the database and theme first, where most insecure files hide. If the site is large, the warning keeps returning, or the padlock matters for your checkout, ZenWeb’s SEO team can clear it and confirm your site is secure.


14. Frequently Asked Questions

1. What does a mixed content warning actually mean?

It means your page loads over secure HTTPS, but at least one file on it — an image, script, stylesheet, or font — still loads over insecure HTTP. The browser cannot guarantee the whole page is secure, so it removes the padlock, shows a “Not secure” note, or blocks the insecure file. It is a setup gap, not usually hacking.

2. Will mixed content hurt my Google rankings?

Not directly in most cases, but it hurts indirectly. HTTPS is a lightweight ranking signal that mixed content undermines. More importantly, a “Not secure” label scares visitors, blocked scripts break pages, and slower loading drags Core Web Vitals. Those effects hurt conversions and rankings more than the flag itself.

3. Why did mixed content appear only after I moved to HTTPS?

Because an SSL certificate secures the connection but does not rewrite links already saved on your site. Every http:// URL in your old posts, theme files, and database stays as it was, and now loads insecurely on your HTTPS pages. The fix is to update those saved links to https://.

4. Can I just use a plugin to fix mixed content in WordPress?

A plugin helps as a temporary safety net, but it often masks the problem rather than removing it — it forces files to load over HTTPS without cleaning the underlying links. That is why plugin-only sites frequently relapse. The lasting fix is to update the settings and run a database search-and-replace.

5. How long does it take to fix mixed content?

Most sites are clear within a day. Adding an upgrade-insecure-requests rule gives you a clean padlock in under an hour as a stopgap, and a database search-and-replace clears the bulk in one to three hours. Only large or custom sites need a half-day to full-day audit.

Still seeing “Not secure” after your HTTPS switch?

Book a free 30-minute strategy session. We’ll find every insecure file, clear the mixed content, and re-test each page type so your padlock holds and your site is fully secure.

Get my free strategy session →

Table of Contents

Table of Contents

See Also

Cross-Domain Tracking Broken? How to Fix Split Sessions

Cross-Domain Tracking Broken? How to Fix Split Sessions

UTM Links Not Working in GA4? How to Track Campaigns

UTM Links Not Working in GA4? How to Track Campaigns

Form Submissions Not Showing as Conversions? Fix It Now

Form Submissions Not Showing as Conversions? Fix It Now

Get A Free Proposal

Complete the form and our team will contact you to discuss your goals. Let’s grow your business.

Meowketing Specialist

Online

Today

Meow! 👋

We are Official Google Partner,
Ask us anything about Marketing!