Skip to content
Metro Vancouver IT Metro Vancouver IT
Skip visual story
  • Typical cleanup totals $180–$270 — 2–3 hours at $90 CAD/hour. Heavily infected or long-neglected sites take longer, and we confirm before continuing
  • 30-day re-fix: if the site is reinfected through the same hole within 30 days, we clean it again at no charge
  • Triage first — we confirm what is broken and what is safe to touch

Our promise

30-day re-fix guarantee

If the site is reinfected through the same entry point within 30 days of cleanup, we clean it again at no charge. A brand-new vulnerability in an unpatched plugin is a different incident, and we will say so plainly rather than quietly billing it as the same one.

  • What we cannot promise: that Google clears a warning instantly. No honest vendor can
  • What we do instead: fix the root cause, file the reconsideration request, and monitor until warnings clear
  • If the install is too far gone to clean safely, we say that on day one instead of billing hours into it

What you get

How WordPress malware removal and hacked site cleanup actually works

Concrete deliverables — no vague SaaS jargon. Each engagement is sized to your business and reviewed monthly.

Containment

Isolate the site where it helps, preserve logs when useful, and stop the bleeding before cosmetic fixes.

Database & files

Scan uploads, themes, and mu-plugins; audit the database for injected scripts, rogue admins, and scheduled junk.

Clean restore path

Rebuild from a verified backup when that is faster than hand-cleaning thousands of infected files.

Search Console & blacklist reconsideration

Once the site is verifiably clean we file the Google Search Console security review, submit reconsideration requests to blacklists flagging you, recheck Safe Browsing and your sitemap, then monitor until the warnings drop.

Keys rotated

Admin passwords, salts, API keys, FTP/SFTP, and hosting panel access reviewed and rotated with a simple handoff list.

After-action report

A written summary of what happened, how they got in, what was removed, and what to watch next — no fear-mongering, just facts.

See a sample report

From experience

What a compromise usually looks like

The first message is rarely “we have malware.” It is a search warning, a strange redirect, or a page that changed on its own.

  • Search warnings and injected addresses

    Google or another engine flags the site, or search results show URLs you never published.

  • Unauthorized content changes

    Published articles or pages rewritten without an editor login you recognize.

  • Redirects on the search-result link only

    Typing the domain works; the result in Google still bounces. Direct access and the indexed URL are different tests.

  • Cleanup that reinfects

    Files removed during a deploy come back because the entry point was never closed.

  • Tools that will not run

    The application or PHP version is too old for the scanner you wanted to use. That is a finding, not a reason to skip the cleanup.

  • Updates as remediation

    Patching is part of the job. It is not a guarantee the site will stay clean.

Patterns drawn from our team’s years of agency support work.

From the support desk

Situations our team has handled

Anonymized cases from our team’s years of agency support work: what the owner saw, what was actually wrong, and what we check first because of it.

Cleaned in time for launch, then reinfected

What they saw
The host flagged infected files in the middle of a site launch.
What was wrong
Suspicious scripts and rogue redirect rules. How the attacker got in was never established.
Outcome
A first cleanup let the launch go ahead. The infection came back later and had to be escalated.

Takeaway: Deleting bad files is not the same as closing the door. Until the way in is found and every password is rotated, treat a cleanup as temporary.

Too old for the malware scanner

What they saw
A suspected hack needed checking, but the site was too old to run the security scanner we wanted to use.
What was wrong
The outdated software blocked the tool. How the attacker got in was not established.
Outcome
We prepared a cleaned copy of the site for the owner to review and approve.

Takeaway: A site too old to scan is a finding in itself. Plan the update or rebuild as soon as the cleanup is done.

Fine when typed in, hijacked from Google

What they saw
Visitors who clicked the site in Google were redirected elsewhere. Typing the address worked.
What was wrong
Outdated software blocked the malware tool we wanted to run, and the way in was not established.
Outcome
Direct visits were clean again. The link from search results was scheduled for a recheck.

Takeaway: Many hacks only redirect visitors who arrive from search engines. Always test the Google result, not just the typed address.

Articles rewritten without a login

What they saw
Published articles changed, and no editor had touched them.
What was wrong
A known vulnerability in the site’s core software was the likely way in, though it was never proven.
Outcome
The incident was closed as resolved. There was no record of the original text being restored.

Takeaway: Keep revision history and off-site backups. They are how you get the original words back.

Client names and identifying details removed. Outcomes are described as they happened, including the ones that needed follow-up.

After a cleanup

Post-hack hardening checklist

A cleanup that skips these steps is how reinfection starts. Use this after the site is verifiably clean.

Print this page to keep a paper copy beside the work.

  1. 1 Keep the pre-cleanup snapshot. You may need it for forensics even if you never restore it.
  2. 2 Remove malicious files and altered published content, then update the components that let them in.
  3. 3 Rotate every secret that could have leaked: CMS admins, salts, hosting panel, SFTP/SSH, FTP, API keys, and leftover contractor accounts.
  4. 4 Compare core, themes, and plugins against known-good copies. Delete unused themes and abandoned plugins.
  5. 5 File the Search Console security review and any blacklist reconsideration only after the site is clean — not before.
  6. 6 Put a WAF or CDN rule in front of wp-login and xmlrpc if the stack is WordPress.
  7. 7 Turn on daily off-site backups and a restore test. A backup you have never restored is a rumour.
  8. 8 Write the after-action: entry point if known, what was removed, what was rotated, what was filed, what only the owner can decide next.

We cannot promise Google will clear a warning on a timetable. We can promise the request is filed after the site is actually clean.

Client work

Related case studies

Named clients and live websites you can visit.

All case studies
Judi Wang CPA

Accounting firm · Vancouver

Judi Wang CPA

A new professional website paired with IT support and server infrastructure (Active Directory) for a growing accounting practice.

Active Directory rollout
Completed
Staff accounts standardized
100%
Website launch
On schedule
NuGlass

Glass manufacturing · BC

NuGlass

A hacked website recovered and stabilized with ongoing WordPress hosting and uptime support — in a case where no backup was available.

Recovery
Restored from scraped content
Hardening
WAF + admin lockdown
Backups going forward
Daily off-site, tested

What you are left holding

What your after-action report covers

Every cleanup ends with a written report, because “it’s fixed, trust me” is worthless the next time something looks odd. The report states when the compromise started as far as the logs show, the entry point we believe was used, the malicious files and database rows removed, the accounts and keys rotated, the components patched, and the hardening applied. Where a fact is uncertain, it says so instead of dressing a guess up as forensics.

It also lists what we filed on your behalf — the Google Search Console security review, any blacklist reconsideration requests — and what we could not do, which usually means the two or three things only you can decide: retiring an abandoned plugin, dropping an old admin account someone still uses, or budgeting for a rebuild the cleanup postponed rather than solved.

You can read an illustrative version before you hire us: see a sample after-action report. It is a redacted example written to show the format and depth — not a real client’s incident.

Who it is for

A strong fit when

  • Google shows “This site may be hacked” or unexpected pharmacy/loan redirects
  • New admin users appear, SEO spam pages show up in Search Console, or outbound email is blacklisted
  • A plugin or theme vulnerability was disclosed and traffic looks “off” in analytics
  • You need someone local who will explain options without upselling a full rebuild on day one

Our process

How cleanup usually runs

  1. 1

    Triage

    Confirm symptoms (redirects, spam, admin lockout), check hosting status, and decide whether to take a fresh backup before cleanup.

  2. 2

    Snapshot

    Point-in-time backup even if the site is compromised — useful for forensics and rollback if a cleanup pass misses something.

  3. 3

    Scan & integrity

    Malware scan plus core, plugin, and theme integrity checks against known-good copies.

  4. 4

    Remove & patch

    Strip malicious code and users, update vulnerable components, and remove unused entry points.

  5. 5

    Harden

    WAF/CDN rules, least-privilege admin accounts, file permissions sanity check, and basic rate limits where they help.

  6. 6

    Validate

    Forms, checkout, logins, cron, and Search Console — then a reinfection prevention checklist you can actually follow.

Metro Vancouver IT technician at Fisherman’s Wharf in Steveston, British Columbia

Who does the work

One technician, start to finish

Metro Vancouver IT is a small Burnaby-based shop. The person who triages the compromise removes the malware, rotates your keys, and writes your after-action report — so nothing gets lost in a handoff halfway through an incident.

  • Plain-English updates while the cleanup runs, not a silent ticket
  • We work on your existing host — no forced migration attached to the cleanup
  • Rebuild is recommended only when cleaning is genuinely the wrong call

Trusted technologies we support

  • Google Cloud
  • AWS
  • Microsoft Azure
  • Cloudflare
  • WordPress
  • Docker
  • cPanel
  • Linux

Related services

Pairs well with

Cybersecurity

Hardening and monitoring after an incident.

Learn more

Security plugins compared

Which plugin we install, and what a week of attacks looks like.

Learn more

WordPress care

Updates, backups, and monitoring.

Learn more

WordPress hosting

Managed hosting with WAF and backups.

Learn more

FAQ

Frequently asked questions

How fast can you start?
Same-day triage is often possible for active Vancouver-area clients. Exact timing depends on hosting access and how badly the site is degraded.
How much does WordPress malware removal cost?
Cleanup is billed at $90 CAD/hour, and a typical cleanup runs two to three hours — about $180–$270. A heavily infected site, thousands of injected files, or an install nobody has updated in years takes longer. We begin with triage and access review, give you an estimate for the safest recovery path, and ask for approval before continuing if new damage changes the scope.
Will you need hosting and WordPress access?
Yes — hosting panel, SFTP/SSH if available, and an admin account. If credentials are compromised, we reset through the host before continuing.
Do you guarantee Google will clear warnings instantly?
No honest vendor can. We fix the root cause, request reviews where applicable, and monitor until warnings clear — usually improves within days once the site is clean.
Is a rebuild always required?
Not usually. If the core is intact and backups are trustworthy, cleanup plus hardening is enough. When the install is ancient or heavily modified, we will say so plainly.
What happens after cleanup?
We recommend WordPress care or hosting with WAF and monitored backups. Ongoing work is optional and scoped to what you actually need.
Do you handle the Google Search Console and blacklist reconsideration requests?
Yes, and it is a named part of the job rather than something you chase afterwards. Once the site is verifiably clean we file the security review in Google Search Console, submit reconsideration requests to any blacklist flagging your domain or mail, recheck Safe Browsing and your sitemap, and monitor until the warnings drop. We cannot control how long a review queue takes, so we tell you what was filed and when.
What if the site gets reinfected?
If it is reinfected through the same entry point within 30 days of cleanup, we clean it again at no charge. A new vulnerability in a different component is a separate incident — we will explain which one we are looking at and why, rather than billing a fresh cleanup as if it were the old one.
Do I get anything in writing?
Yes. Every cleanup ends with a written after-action report covering the entry point, what was removed, which accounts and keys were rotated, what was patched, and what we filed with Google. You can read a redacted sample at /services/hacked-wordpress-website-cleanup/sample-report before hiring us.
Google says my site may be hacked. Do you start in Search Console?
We start by proving whether the live site is still compromised. Search Console and blacklist requests are filed after the site is clean, not instead of the cleanup.
Search results redirect but typing the domain works. Are we done?
No. Direct access and the indexed URL are different tests. We treat the search-result link as still dirty until it is rechecked.
Can you clean a site that is too old for the security plugin you wanted to run?
Yes. An outdated application is a finding. It is not a reason to skip containment, file review, and a cleaned copy. It may be a reason to talk about a rebuild after the bleeding stops.

If the site is hacked, start here

Tell us what you are seeing — redirects, warnings, or admin lockout — and we will propose the fastest safe path. Typical cleanup totals $180–$270 (2–3 hours at $90 CAD/hour); heavier infections are quoted before we continue.

Contact

Tell us what the site is doing

Include the website URL, warnings or redirects you see, and whether you still have hosting access. Active incidents are triaged the same business day when received during Pacific Time business hours.

Hours
Mon–Fri · 9:00 AM – 6:00 PM (PT)

Add any details that will help us understand what you need. Maximum 600 characters.

Typical first response: within four business hours, Monday–Friday. By submitting, you agree to our privacy policy.

Site hacked right now?