Repository navigation
Data and privacy
This page lists every outside service SafeHouse contacts, everything it stores on your site, and what deactivating and uninstalling remove. Use it for your privacy policy and for data protection questions. SafeHouse sends no telemetry.
Apart from the SMTP and Redis servers you set up yourself, SafeHouse contacts up to four services, and only for the modules that need them. Server-side requests use WordPress's HTTP API and its default user agent, which includes the site's address.
| Service | Used by | When | What is sent |
|---|---|---|---|
WordPress.org plugin directory (api.wordpress.org) |
Plugin health | Once a week, and at the next daily check after plugins are added, removed or updated | The slugs of installed plugins, to read whether each is closed and when it was last updated. Plugins that name another update source are not sent. |
Design House update host (updates.designhouse.me) |
Signed updates | When WordPress checks for plugin updates | A request for the release manifest. Nothing about the site's plugins. |
Design House update host (updates.designhouse.me) |
Vulnerability alerts | At most every 6 hours | Requests for a signed index and for the data files that cover the installed software. Each file covers about 1/256 of all plugins and themes, so the site never sends its plugin list. |
Cloudflare Turnstile (challenges.cloudflare.com) |
Bot protection, only with Turnstile keys set | When a visitor opens a page with a protected form, and when they send it | The visitor's browser loads Cloudflare's Turnstile script. When the form is sent, the site sends the Turnstile token to Cloudflare to check it, with the visitor's address when SafeHouse knows the real one. |
Cloudflare API (api.cloudflare.com) |
Cloudflare cache, only when on and set up | After content changes, at most once every 30 seconds | The zone ID and the addresses of the changed pages. |
The vulnerability data comes from Wordfence Intelligence and is published by Design House. The Design House privacy policy is at designhouse.me/polityka-prywatnosci. Cloudflare's terms are in its privacy policy and the Turnstile privacy addendum.
LiteSpeed page cache also requests your own site's home page for its Site Health check, and wp shouse cache purge sends one request to your own site. Neither reaches an outside service.
| Data | Where | Kept for |
|---|---|---|
| The user and the visitor address of each activity log event | Table {prefix}shouse_log
|
90 days |
| Visitor addresses with failed logins, and keyed hashes of the account names typed into login forms (never the names in plain text) | Table {prefix}shouse_login
|
Until 30 days without activity, unless still locked out |
| A signed device cookie for each login name and e-mail address that logged in | Cookies shouse_device_* in users' browsers |
180 days |
SafeHouse keeps no mail log, so password-reset links and the contents of e-mails are never stored. It writes nothing to user profiles.
| Table | Holds |
|---|---|
{prefix}shouse_log |
The activity log |
{prefix}shouse_login |
Login limits counters and lockouts |
{prefix}shouse_price_history |
Omnibus price history: product ID, price and time of each change, kept for a year |
| Option | Holds |
|---|---|
shouse_settings |
All settings (loaded on every request) |
shouse_watch_state |
The Change alerts baseline |
shouse_plugin_health |
The last Plugin health report |
shouse_vulnerabilities, shouse_vulnerabilities_findings, shouse_vulnerabilities_notified
|
Vulnerability data, current findings, and findings already e-mailed |
shouse_lockdown_until |
When an install unlock ends |
shouse_omnibus_since |
When Omnibus price recording started |
shouse_cloudflare_pending, shouse_cloudflare_result
|
Cloudflare purges waiting to be sent, and the last result |
shouse_litespeed_purge |
A LiteSpeed purge waiting for the next request |
shouse_object_cache_stale |
A marker that the Redis cache missed changes and must be cleared |
shouse_db_version, shouse_login_db_version, shouse_omnibus_db_version, shouse_migrated_from_wphouse
|
Internal version markers |
Short-lived transients start with shouse_ too, such as the cached update manifest (3 hours) and one-time notices (60 seconds).
| Hook | Runs | Does |
|---|---|---|
shouse_hourly |
Hourly | Change alerts check, vulnerability data refresh |
shouse_daily |
Daily | Activity log clean-up, login record clean-up, Omnibus history clean-up, Plugin health check |
shouse_cloudflare_purge |
Once, 30 seconds after a delayed Cloudflare purge | Sends the waiting purge |
-
wp-content/object-cache.php, only afterwp shouse object-cache enable -
wp-content/shouse-safe-mode, only afterwp shouse safe-mode on - cookie
shouse_device_*(Login limits), and_lscache_varyfor logged-in users, commenters and visitors with a cart (LiteSpeed page cache)
SafeHouse never writes to .htaccess or wp-config.php.
Deactivating SafeHouse stops it, removes its scheduled tasks, and removes its Redis object cache drop-in together with the site's keys in Redis. All data stays, so reactivating brings everything back.
Deleting SafeHouse on the Plugins screen also removes:
- the three tables
- every option and transient starting with
shouse_(andwphouse_, from before version 0.2.0) - the scheduled tasks
-
wp-content/object-cache.php, if it is SafeHouse's own (another plugin's drop-in is left alone) - the safe mode files
It leaves:
- cookies already in visitors' browsers, until they expire
- posts made with Duplicate posts and pages
- a pending one-time
shouse_cloudflare_purgetask, if one was scheduled; it does nothing once SafeHouse is gone - on multisite, the tables and options of every site other than the one the uninstall ran for; remove those by hand
These pages describe SafeHouse 0.2.0 and were last reviewed on 2026-10-07. · Repository · Releases · Changelog · Report a problem with these pages
Search every page and heading in the Pages box.
Start here
Modules
- All modules
- Security: Hardening · Login limits · Bot protection · Install lockdown
- Alerts: Change alerts · Plugin health · Vulnerability alerts
- Performance: LiteSpeed page cache · Cloudflare cache · Redis object cache
- WooCommerce: Omnibus price history
- Site tools: SMTP mail · Header and footer scripts · Duplicate posts and pages · Maintenance mode · Tweaks
Guides
- Behind Cloudflare or a proxy
- Running with Wordfence
- Configure in wp-config
- Deploy with git or CI
- Replacing other plugins
- Upgrade from WPHouse
Reference
Trust
Help