For web agencies that look after WordPress, Joomla, Drupal and PrestaShop sites

Spot the hack before your client does.

SitePing checks every site from outside, like a visitor, and from inside, with an agent in the CMS. You see new admins, changed core files and PHP hidden in uploads. At night it takes encrypted backups and updates plugins, and if an update breaks the site it goes back to the previous version.

No credit card needed to start.

Agency sitesLast round at 03:12
  1. studio-rossi.example 182 ms WordPress 6.8
  2. lakeside-hotel.example 240 ms Joomla 3.10.12 with Active Shield
  3. town-council.example 228 ms Joomla 5.4 Super User that Joomla does not list: "sysadm"Written straight into the database at 03:12
  4. medical-board.example 205 ms Drupal 10.6
  5. hardware-shop.example 296 ms PrestaShop 8.2
  6. valley-winery.example 311 ms PrestaShop 1.7.8.11
The site with the alert answers in 228 ms: to an uptime monitor, all is well.
WordPress
5.0 and later, with PHP 7.4 or later
Joomla
3.9 and 3.10, 4.4, 5 and 6
Drupal
7, and 8.9 to 11
PrestaShop
1.7.6 to 9

No port to open on the client's server. Requests are signed in both directions.

An external monitor sees the home page. A security plugin sees only its own site.

Security plugins are also the first thing an attacker switches off. SitePing puts both views together and stores events on its own servers, where someone who breaks into the site can't delete them.

Inside, with the agent

  • New administrators and role changes, as they happen
  • Every core file compared with the one in the official release
  • PHP hidden in upload folders, including names like photo.php.jpg
  • .htaccess, index.php, .user.ini and auto_prepend_file, where malware starts before the CMS does
  • Fatal PHP errors, and admin logins from IP addresses never seen before
  • Installed versions with known vulnerabilities
  • 169 configuration checks, from Super Users without 2FA to .sql backups left in the site folder

Outside, from our servers

  • Uptime and response time, confirmed by probes in other regions. We also check the page text, because a defaced site often still answers 200 OK
  • SSL certificate and domain expiry, weeks in advance
  • DNS changes: a nameserver change is often the first sign of a hijack
  • Sitemaps full of pharma or casino pages, and robots.txt files that block Google
  • Blacklists such as Google and Spamhaus, which show visitors a red warning screen
  • Security headers such as HSTS and Content-Security-Policy

Joomla, Drupal and PrestaShop get the same attention as WordPress.

Many multi-site dashboards are built for WordPress and add other CMSs later. Our agents are native extensions of each CMS and share one core, so monitoring, security and backups reach all of them together.

Core integrity without official checksums
Joomla doesn't publish hashes of its files. We compute them from the Full Package of each version and compare them with the files on the site.
The data comes from Joomla
Super Users, extensions, pending updates and the core update settings are read by the agent inside the site. From outside you could only guess.
Logins through Joomla's own system
One-click access goes through the same mechanism as Joomla's passwordless login, so user plugins and the action log treat it like any other login.
Joomla 3 as well
Joomla 3.9 and 3.10 get a separate plugin that runs even on PHP 7.1. Monitoring, core integrity and backups work on sites nobody has touched in years, and we keep reminding you they need migrating.
Drupal 7 onward, insecure releases included
One module for Drupal 8.9 to 11 and one for Drupal 7. We read releases from drupal.org, like the Update Status module: if core or a module runs a release marked insecure, you get an alert with the version to install.
PrestaShop 1.7.6 onward
A native module for PrestaShop 1.7.6, 8 and 9. It checks modules, administrators, core files and templates, including the JavaScript loaders injected by card skimmers.

Official security fixes for the sites you can't migrate yet.

Joomla 3.10.12 and PrestaShop 1.7.8.11 get no more fixes, and many clients have no budget to migrate right away. Active Shield applies the official fixes released since then, backported file by file from the Joomla and PrestaShop releases. Upgrading is still the real cure: in the meantime the site isn't left open.

  • Joomla 3.10.12: the 12 CVEs fixed by the eLTS releases 3.10.15 to 3.10.20, and 19 later Joomla 5 fixes that also touch Joomla 3 code
  • PrestaShop 1.7.8.11: the PrestaShop 8 fixes that also apply to 1.7, including an SQL injection in back office list filters
  • Joomla 3 extensions whose fixed release no longer installs, such as Phoca Download 3.2.x, and a request block for Sourcerer
  • All or nothing: if someone changed a file we touch nothing and tell you which one. Turning Active Shield off puts the official files back
Active Shield lakeside-hotel.example, Joomla 3.10.12
CVE-2024-21726 Content filter bypass OK
CVE-2024-40749 Restricted views visible to guests OK
CVE-2024-27185 Cache poisoning through pagination OK
CVE-2026-74253 Sourcerer: requests with {source} blocked OK
70 files Compared with the official release before writing OK

169 configuration checks, written for each CMS.

The agent reads what can't be seen from outside: who is an administrator, how the CMS is set up, what sits in the database and in the site folder. Each result says what to do and on which screen.

  • Signs of compromise: Super Users that Joomla doesn't list, WordPress admins hidden by a filter, cron events running code from hidden folders
  • Risky settings: the WordPress file editor turned on, the PrestaShop install folder left behind, trusted_host_patterns missing in Drupal
  • Database users with rights on the whole server, or that can see other databases
  • For each site choose production or staging, registration wanted or not, API used or not. Checks you don't need stay off
  • Only serious problems reach your inbox. The rest stays in the dashboard
Checks town-council.example, Joomla 5.4
A04 Super User that Joomla doesn't list Critical
H03 backup-2025.sql in the site folder Critical
F02 2 Super Users without multi-factor authentication Warning
E01 Database user with rights on the whole server Warning
D04 HTTPS enforced on the whole site OK

You see which file changed.

When a core file changes you get its exact path, compared with the official release of the installed version. A changed PHP file in the core is critical. An edited template is usually the work of whoever built the site, so it shows up as a warning.

In our tests on clean installs, zero false positives: 3,336 WordPress files, 9,625 Joomla files, 22,269 Drupal 10.6 files and 37,172 files of a PrestaShop 9.2 store.

Core integrity Joomla 6.1.3: 9,625 files compared with the official release
libraries/src/Factory.php Modified Critical
plugins/system/sef/helper.php Not in the release Critical
templates/cassiopeia/index.php Modified Warning

SEO spam keeps the site online and takes away its Google rankings.

Whoever injects spam pages usually leaves the home page alone. You find out from hundreds of new URLs in the sitemap, a robots.txt that blocks Google, or a blacklist's red warning screen.

Sitemap

Sudden growth, links to other domains, pages about pills, casinos or loans

robots.txt

Changes, and rules that block search engines

Blacklists

Google Web Risk, Spamhaus DBL and ZEN, SURBL, SpamCop

DNS

New A, MX or nameserver records

SEO shield: compares the page served to Googlebot (also checked from inside the site, where cloaking has nowhere to hide) with what a visitor from Google and a mobile visitor get. That is how conditional redirects and hidden links come out. If you like, an AI opinion tells you what to clean up.

Alerts that reach you where you read them.

A site counts as down only when at least two regions see it down. Warnings and critical alerts go out by email, webhook or Telegram, and when several things happen at once we group them.

Multi-region uptime

Probes in other regions confirm an outage before the critical alert. A firewall that blocks only our IP wakes nobody up.

Telegram alerts

Link a private chat or a group with a link valid for one hour, and pick warnings and critical, or critical only.

Disk space

A warning when the hosting disk is 85% full with less than 10 GB left, critical under 512 MB free. Thresholds can be changed per site.

Fatal PHP errors

File, line and message of every fatal error, on inner pages and the checkout too.

Accessibility

Lighthouse measures the accessibility of the home page and flags problems that appeared since the last run.

Core Web Vitals

Mobile and desktop scores every week, with an alert when they drop.

If an update breaks the site, it goes back to the previous version on its own.

Many updates change the database as well, and putting back only the old files leaves the site half broken. Before updating, SitePing saves the plugin's folder and the tables it may touch. If the pages fail afterwards, it puts everything back.

  • A full backup from the last 24 hours, then a restore point with files and tables
  • The home page and pages you pick are checked before and after: errors, missing text, missing CSS, PHP fatal errors
  • If something is wrong, files and database are rolled back and the pages checked again
  • Each site is set to manual, security only or full. Updates run at night, in the site's time zone
  • Releases that don't fix a security hole wait 48 hours and go out in waves. If a release breaks sites, we stop it for everyone
  • Plugins with an expired licence: you get an alert, and we don't retry every night

This works today for WordPress plugins and themes. Joomla extensions and staging will follow.

Safe update studio-rossi.example, tonight at 02:14
Site backup Tonight, 01:30 OK
Restore point Plugin folder and 3 tables OK
Shop Builder 8.1 to 8.2 Updated OK
Page checks PHP fatal error on /shop/ Critical
Rollback Back on 8.1 in 4 seconds OK

Encrypted backups that nobody can delete early.

The client's server compresses and encrypts the database and files, then uploads them straight to European storage. The work is split into steps of a few seconds, so shared hosting copes.

Encrypted on the site

AES-256, with a different key for each backup. Nothing readable is left on the site or in storage.

Incremental, and restored in one pass

From the second backup on, only changed files are sent. Restoring doesn't mean replaying a chain: every backup has the full list of its files.

Several schedules per site

For example the whole site on the first of the month and the database every night, each kept for as long as you choose. Important backups can be kept forever.

Locked, and verified

The storage uses Object Lock: until they expire they can't be deleted, even with stolen credentials. With one click we read back every part of a backup and count the database tables, and every 90 days we remind you to test a restore.

Restore from the dashboard

Pick the database, the files or both. Before restoring we back up the site as it is now. If you prefer, download .sql.gz and .tar.gz files.

You can hold the key

For sites with sensitive data: backups are locked with a key only you have, and without that file nobody can open them, us included. You can decrypt them offline too, from the command line or in the browser.

Log in to any client's admin with one click.

No shared password files, and no admin accounts made for the agency and then forgotten. The platform asks the site for a login link that works once, for 60 seconds, on that domain only.

  • The token works once, for 60 seconds, and we store only its hash
  • We request it from the site with a signed call, so the link can't lead to another domain
  • Every login is recorded on the platform and in the site's own log
  • Whoever runs the site can switch it off in the plugin settings

Three steps, and the first is enough for the outside checks.

  1. Add the site

    Paste the URL and the uptime, SSL, DNS, domain, sitemap and blacklist checks start right away. No plugin needed.

  2. Install the agent

    It's a light plugin for WordPress, Joomla, Drupal or PrestaShop. It opens no ports and only answers requests signed with that site's key.

  3. Paste the code

    A one-time code links the site to the platform. From then on you get the inventory, security events and integrity checks.

    MCM1.eyJ1IjoiaHR0cHM6Ly9hcHAu…

Getting all of this today takes at least three tools.

WordPress-only dashboardsExternal scannersSitePing
WordPress, Joomla, Drupal and PrestaShop in one dashboard Rarely No Yes
Checks from inside: new admins, core files, uploads Yes No Yes
Checks from outside: uptime, DNS, blacklists, sitemap spam Partly Yes Yes
Joomla core integrity Rarely No Yes
One-click admin login Yes No Yes
Backups encrypted on the site, incremental Partly No Yes
Update rollback including the database Rarely No Yes
Joomla 3 and Drupal 7 still in production No Partly Yes
Security fixes for Joomla 3.10 and PrestaShop 1.7 No No Yes

From the public pages of widely used tools, September 2026. Features differ between plans.

You trust us with access to all your sites, and we built it with that in mind.

No ports to open

The agent only answers requests signed with HMAC-SHA256, with a timestamp and a nonce that works once.

Replies are signed too

A firewall page or a cached error can't be taken for an answer from the agent.

Sensitive files stay on the site

For the configuration and other sensitive files we only receive hashes, to notice when they change.

No work during page views

While the site serves pages the agent only records fatal errors. The rest happens in small steps, when the platform asks.

Tied to your platform

The plugin you download only accepts the platform you downloaded it from. A forged connection code can't hand the site to anyone.

Each agency sees only its own sites

Two-factor login is required for every account. On every release, automated tests check that one agency can't read or control another agency's sites.

What we're building.

These features don't exist yet. We list them because agencies ask for them.

  • Search Console and rendered pages

    Search Console data next to the SEO spam checks, and pages read the way a browser shows them, JavaScript included.

  • Staging and visual checks

    Updates tried on a copy of the site first, screenshots of pages before and after, safe updates for Joomla extensions too.

You pay per site.

Agency licences come in blocks of 5 sites, and the price per site goes down as the licence grows. All the sites of a licence get the same tier.

Essentials

$2.50 per site / month

for the first 5 sites, down to $1.50 from site 41

The agent in every site, for agencies that handle backups elsewhere.

  • Inventory, events and automatic checks
  • Core integrity, file scans and vulnerability alerts
  • Updates and one-click login from the dashboard
  • Uptime confirmed from other regions

Pro

$3.75 per site / month

for the first 5 sites, down to $2.25 from site 41

Essentials plus backups and updates that roll back on their own.

  • Safe updates with automatic rollback
  • Encrypted backups and restore, storage in GB packs
  • Status pages without the {brand} name

Complete

$5.00 per site / month

for the first 5 sites, down to $3.00 from site 41

Pro plus the checks for sites that live on Google traffic or run an old CMS.

  • SEO shield: Googlebot and visitors compared
  • AI opinions, 30 credits per site a month
  • Active Shield on Joomla 3 and PrestaShop 1.7
  • 50 GB of backup storage included
  • History kept for 24 months

Free

$0.00 per month

Uptime monitoring for up to 50 sites, without the agent.

  • A check every 5 minutes
  • SSL, domain expiry and keyword checks
  • Email and Telegram alerts
  • One status page with the {brand} name

Solo

$5.00 per month

One site with the Pro features, for freelancers.

  • Everything Pro has, except the status pages without our name
  • 5 GB of backup storage included

Prices before VAT and taxes, which checkout adds for your country.

Questions agencies ask us.

Do I have to install a plugin?

No. Uptime, SSL, DNS, domain expiry, sitemap and blacklist checks only need the URL. The plugin is for what can only be seen from inside: new admins, core and file integrity, vulnerabilities, one-click login.

Will the agent slow down my clients' sites?

During page views it only registers a handler for fatal errors. Scans and checks run when the platform asks, in steps of a few seconds, and are built for shared hosting.

What if an attacker removes the plugin?

After three failed contacts you get an alert, and the outside checks carry on. The last known state of the site stays on our servers.

Which versions do you support?

WordPress 5.0 and later with PHP 7.4 or later. Joomla 4, 5 and 6, plus Joomla 3.9 and 3.10 with a separate plugin that runs even on PHP 7.1. Drupal 7 and 8.9 to 11, PrestaShop 1.7.6 to 9.2.

Do you also look after sites without a CMS?

Yes. Any address can be checked from outside, an API too (with a check on a JSON field), and so can a TCP port such as a mail server. For Laravel, Symfony or custom PHP code there is a connector for PHP 7.1 or later: file scans, upload folders, watched files and configuration checks. It can't check core integrity or vulnerabilities, because a custom application has no official list to compare with.

Some clients run Joomla 3 or PrestaShop 1.7 and won't migrate. What can we do?

Monitoring, core integrity and backups work there too. On Joomla 3.10.12 and PrestaShop 1.7.8.11 you can turn on Active Shield, which applies the official security fixes released after end of life. Versions 3.9, 1.7.6 and 1.7.7 first need the last release of their branch. The migration still has to happen, but in the meantime the site isn't left open.

What if an update breaks the site?

Before updating we save the plugin's folder and the tables it may change, and check the pages. If errors, missing text or PHP fatal errors show up afterwards, we put files and database back and let you know. For three days you can also roll back by hand.

Where do backups go, and who can read them?

They leave the site already encrypted and stay encrypted in European storage, locked against deletion. Each backup has its own key, which the platform keeps encrypted. If you want, a site's backups are locked with a key you hold: we have only the public half, and without your file nobody can open them.

Where does your vulnerability data come from?

Wordfence Intelligence for WordPress core, plugins and themes, the Joomla Security Centre for the Joomla core, and OSV.dev (GitHub and drupal.org advisories) together with drupal.org release data for Drupal core and modules. For PrestaShop we use OSV.dev and the Friends of Presta advisories for third-party modules. The same vulnerability published by several sources raises one alert.

Which channels do alerts use?

Email, webhooks and Telegram, in a private chat or a group. On Telegram each chat gets warnings and critical alerts, or critical only. Slack and Microsoft Teams aren't there yet.

Can my clients see their own sites?

Yes, on the Pro and Complete plans. You give a person of your client a login: they see the status, uptime, backups, updates and monthly reports of their own sites under your name, and they change nothing. Each month they can also get their report by email, as a PDF with your logo.

Start the 30-day trial.

Connect your first sites today and see what SitePing finds on them.

  • Every Complete feature except backups
  • Up to 10 sites
  • No credit card needed to start
  • At the end you choose a plan or move to Free, and nothing is charged
Start the 30-day trial

Already have an account? Log in. Prefer to look at one site first? Free read-only audit.