Privacy Policy
Effective date: 12 November 2026
This policy explains what personal data WP Tech Group LLC, 30 N Gould St, STE 4000, Sheridan, Wyoming 82801, USA ("AlwaysUp", "we", "us") handles when you use the AlwaysUp plugin, service and website, why, who else processes it, and how long we keep it. Contact us about privacy at team@alwaysupwp.com.
1. Our role
- Controller for the data about you as our customer: your account, billing and support messages, and how you use our dashboard.
- Processor for the data in and about your WordPress site, including personal data of your site's users, customers and visitors. We process it only on your instructions, to provide the service, under our Data Processing Agreement (https://alwaysupwp.com/dpa/). You, the site owner, are the controller of that data and are responsible for telling your visitors about it. Requests from your visitors that reach us will be passed to you.
EU and UK representative. Where Article 27 of the GDPR or the UK GDPR requires it, we will appoint a representative in the EU and in the UK and name them here. Until then, contact us at team@alwaysupwp.com.
2. This website
alwaysupwp.com sets no cookies, runs no analytics and loads nothing from other servers. It is served through Cloudflare, which processes visitors' IP addresses and request details to deliver the pages, under its own terms. When you use the early-access form on this website, we keep the email address, website address and plan you choose to contact you about AlwaysUp access, and delete them on request.
3. What the plugin does without an account
The plugin's local features (fatal-error rescue, the local saved copy, the rescue log, plugin deactivation and the readiness summary) run on your server and send nothing to us. Nothing is sent until an administrator presses Connect.
4. Data we handle
4.1 Account data (we are controller)
- Your email address, used to sign in (by emailed login link) and to send you service, incident and billing messages from team@alwaysupwp.com.
- Your data region (EU, non-EU or unknown), which decides which AI providers may process your data (section 4.10).
- Dashboard sessions, notifications we send you, and your actions in the dashboard.
- Billing details, handled by our payment processor, Stripe. We do not receive full card numbers.
- Support correspondence.
4.2 Connecting
Pressing Connect creates or uses your AlwaysUp account; that is your agreement to our terms and this policy, and backups start under it. We record who connected (WordPress user ID and login name), the account, the site, the time, the terms version and the version of the wording shown next to Connect. Disconnecting withdraws it; we record that too, and the service then refuses new backups from that site.
On connecting, the plugin sends the email address you enter (or a connect code), your site URL, and readiness facts (host name, PHP and WordPress versions, multisite status, web server and hosting signals, file and database size, active payment gateway names, backup capability, PHP time limit). Before it issues anything, the service fetches a one-time proof from your site's own address.
4.3 Monitoring data
- Every five minutes: WordPress and PHP versions, the server's public IP address if PHP reports one, your TLS certificate fingerprint, and the time.
- Health checks of your site from Cloudflare and from independent checkers, with their results and the state changes they cause.
- Your domain name, given to Cloudflare to issue a certificate. If you use our managed DNS, your DNS records are hosted with Bunny.
4.4 Edge request data (visitors to your site)
Once your DNS points to us, every visitor request to your domain passes through Cloudflare, which processes the visitor's IP address, request headers and the page requested, under Cloudflare's own terms. Our code passes the visitor's IP address on to your server (or to the backup site) so your site sees it as before. We record events, not traffic logs: for example a state change, or a request we could not deliver, with its method and path (without the query string), never its body or cookies.
4.5 The saved copy
We fetch and store copies of your public pages and their on-domain files (images, styles, scripts) with Cloudflare, to serve them if your site fails. Logged-in, personalised, cart and checkout pages are never captured. Cookies are removed before a saved page is served. Public pages may contain personal data you publish (for example author names or comments).
4.6 Backups
A backup contains:
- your whole WordPress database: every table with your site's table prefix, unmasked, including user accounts and password hashes, customers, orders and payment records your shop keeps, form entries, comments, and every plugin's settings, which can include other services' passwords and API keys stored in the database;
- files in wp-content (themes, plugins, uploads),
.htaccessandrobots.txt; notwp-config.php, WordPress core, caches or other backup plugins' archives; - your authentication keys and salts, so a restored site or backup site keeps users logged in. Never your database password.
We do not collect payment card numbers ourselves. If your site's database contains card data, it is copied as it is; WooCommerce and mainstream payment gateways do not normally store full card numbers.
The backup is encrypted on your server and goes directly to Backblaze B2. Our service does not receive file names or contents.
4.7 Structure and progress telemetry
So we can check that a backup site could run from your backup, the plugin reports, after each backup: the database method and consistency label, table names, row counts and timings, each table's storage engine, size and primary key, the names and sizes of its whole-number columns and its next automatic ID, the number of database triggers, the total size of your files, and whether an order-number plugin's counter exists (its name, not its value). For each file it sends only an opaque ID and encrypted size. During a run it reports progress as numbers. It contains no row contents.
4.8 The backup site during an outage (paid plans)
If a backup site is started, your latest backup is decrypted on our server at Hetzner and runs there, with its database and files on that server's disk, for as long as it is needed. It processes your visitors' requests and whatever they submit (orders, form entries, logins, comments), as your own site would. Changes made on it are copied off it, encrypted, to Backblaze B2 about every 30 seconds. The backup site's database and files are archived when it stops (section 7).
Payments on the backup site. When payments are on for your site, card details entered in your payment provider's hosted fields go straight from the shopper's browser to the provider, not through us. To decide whether payments can run, we keep facts about your payment setup (WooCommerce and gateway versions, gateway IDs, your payment webhook's host name, whether a signing secret is set, and the gateway's last webhook success and failure times; never a key or secret), and counts of checkouts, orders and webhook deliveries with short reason codes. These contain no shopper details and no card data.
Email sent by the backup site. If your site sends email through its own email provider, the backup site keeps using it. To check that this works before an outage, we send one test message through your provider, from the backup site's server, to an AlwaysUp test mailbox, and read from your backup which email plugin and provider your site uses, the provider's server name and port, your site's name and its admin and store email addresses (never a password or API key). Otherwise, email your site sends while the backup site serves your visitors (for example order confirmations, password resets and form notifications) passes through our service and is sent through Amazon SES from mail@alwaysupwp.com, showing your site's name, with replies going to your site's own address. This includes each message's recipients, headers and content. The content is kept encrypted until it is sent and is deleted once the message is delivered or finally fails, and in any case after 30 days. We keep a record of each message (recipients, delivery status and times, and any bounce or complaint) to handle delivery problems and abuse. An address that bounced or reported a message as spam is not sent further email from backup sites.
4.9 Returning to your server
To bring your server up to date, our service compares the two copies using checksums, row IDs and file paths of what differs, never row or file contents. For WooCommerce orders taken on your server during an outage, we keep a record of each automatic or owner action: order IDs and numbers, product IDs, SKUs, stock before and after, payment transaction references, amounts and currency. These records contain no names, addresses or card data. The order export used for this is encrypted with your site's key.
While a backup site serves your visitors, the plugin on your own server holds scheduled tasks, outgoing email and outgoing connections, and reports only counts of what it held. It keeps a local log of standby entries and releases (times, WordPress user ID and login, reason) and reports it to us.
4.10 AI features
- Fatal-error diagnosis, only when you press "Get a diagnosis": the error message, file, line, the plugin, theme or core component involved, recently updated plugins, and PHP and WordPress versions. Absolute paths, email addresses, IP addresses, URLs and secrets are removed first.
- Other features (incident reports, readiness reports, DNS explanations, anomaly explanations, page checks before a saved copy is used, questions about your sites) send structured events, statistics, DNS facts, or for page checks and questions, page text or your question.
These features use AI services from third-party AI model providers (for example OpenAI, Anthropic or xAI, which may change), called over their APIs, only for the features listed here. Personal data and secrets are removed before anything is sent wherever the feature allows it, as described above. Inputs that still contain personal data, page text and questions go only to a provider that offers a data processing agreement. AI output is labelled as AI-generated. We do not use your data to train AI models.
4.11 Logs and audit records
- Backup and restore stage events: stage, duration, bytes, throttling, error codes and warnings; never content, credentials or personal data. A local log is also kept in wp-admin.
- An append-only audit log of connections and disconnections, sign-ins, each time the encryption key is handed out (to whom and for what), backup results, backup site, payment and return actions, and emergency releases.
- Health and incident records, alerts and notifications.
5. Why we use it, and our legal bases
| Purpose | Data | Legal basis (GDPR / UK GDPR) |
|---|---|---|
| Providing the service: monitoring, the saved copy, backups, restores, the backup site, email continuity and the return to your server | Site data (section 4.2 to 4.10) | We process it as your processor, on your instructions under the Data Processing Agreement (Art. 28) |
| Running your account, signing you in, sending service and incident messages, support | Account data (4.1) | Performance of our contract with you (Art. 6(1)(b)) |
| Billing and keeping tax and accounting records | Billing details | Contract (Art. 6(1)(b)) and legal obligation (Art. 6(1)(c)) |
| Security, preventing abuse, audit records, handling disputes | Logs, audit records, email delivery records | Our legitimate interests in keeping the service and its users safe (Art. 6(1)(f)) |
| Product news or marketing email | Your email address | Your consent (Art. 6(1)(a)); we send it only if you ask for it, and every message lets you unsubscribe |
We do not sell personal data, we do not share it for advertising, and we do not use it for advertising.
6. Who processes data for us
| Provider | What it does for us | Data it handles | Location |
|---|---|---|---|
| Cloudflare | Edge and certificates for your domain, routing, saved copy storage, health checks; serves this website | Visitor requests and IPs, your domain, saved copy, routing state, health events | Global network |
| Backblaze (B2) | Encrypted backup storage, encrypted backup site changes and archives | Encrypted backups (it cannot read them) | United States |
| Hetzner | Runs backup sites; one independent health checker | Decrypted site database and files while a backup site runs; health check results | Germany |
| Railway | Hosts our control plane and database; one independent health checker | Account data, site records, telemetry, logs, audit records, reconciliation records, queued backup site email | United States |
| Amazon Web Services (Amazon SES) | Sends our email to you; sends the email a backup site sends when your site's own provider is not used (4.8) | Your email address and our messages; for a backup site's email, its recipients, headers and content | EU (Frankfurt, Germany) |
| Bunny | Hosts DNS, only if you use our managed DNS | Your DNS zone records | EU company; global DNS network |
| Third-party AI model providers (for example OpenAI, Anthropic or xAI, which may change) | AI features (4.10), called over their APIs | The AI inputs in 4.10, with personal data and secrets removed first wherever the feature allows | Varies by provider; inputs with personal data removed may be processed outside the EU, including in China |
| Stripe | Billing for your AlwaysUp subscription | Billing and payment details | United States and global |
Only inputs with personal data removed may go to an AI provider that processes them in a country without an adequacy decision, and our code scrubs them again before sending. Inputs of customers recorded as EU or of unknown region go only to AI providers that offer a data processing agreement, never to China. The current list of AI providers in use is available on request.
We give at least 30 days' notice by email before adding or replacing a provider that processes your site's personal data, as our Data Processing Agreement describes.
7. How long we keep it
| Data | Kept |
|---|---|
| Restore points | Hourly points for 24 hours, daily points for 30 days; the newest complete point is always kept |
| Restore points tied to an outage, an emergency release or a return to your server | At least 30 days after that event ended |
| Encrypted changes copied off a backup site | Until the backup site has stopped and the return to your server has completed, then 30 more days |
| Backup site database and files archive | 30 days |
| A restore's undo checkpoint (on your server) | 72 hours |
| Order export used for a return | With the outage archive (30 days); never while the return is open; if any order was held for you, at least 30 days after the return ended |
| Records of order actions during a return (4.9) | For the life of your account plus 1 year |
| Payment setup facts and payment counts (4.8) | While your account is open; deleted with your account's data (below) |
| Incomplete or abandoned backup data no record refers to | Removed once more than 8 days old |
| Content of email sent by a backup site (4.8) | Until it is delivered or finally fails, and at most 30 days |
| Records of email sent by a backup site (recipients, delivery status, bounces and complaints) | 1 year |
| Records of connecting and disconnecting | For the life of your account plus 1 year |
| Audit log: connections, sign-ins, encryption key hand-outs, operator actions, DNS changes, billing and deletion | 2 years |
| Audit log: routine records (backup and retention runs, alerts) | 1 year |
| Health checks, edge events (state changes, requests we could not deliver), backup progress events, resolved alerts | 90 days |
| Notices we sent you (what and when; not your address) | 1 year |
| Incident records and reports, backup site recovery reports, records of a return to your server | For the life of your account plus 1 year |
| Sign-in links; dashboard sessions | 30 days after they expire; 90 days after they end |
| Application logs at our hosting provider | The provider's standard log period; we log no request bodies |
| Account data (email address, sign-in links, sessions) | While your account is open; deleted with your account's data (below) |
| Billing records | As long as tax and accounting law requires, typically up to 7 years |
Nothing of a site or account is removed while it is under a legal hold, while an incident is under review or open, or while a backup site or a return to your server is in progress.
Payment problems. A failed payment is not a cancellation. We email you on the day it fails, 3 days later and 7 days later, and protection stays on. If it is still unpaid 10 days after it failed, protection goes offline: we take no new backups and no backup site will start, but all your data is kept, and paying restores protection at once.
Deletion. Your stored backups, backup site data, copied changes and account details are permanently deleted 21 days after a cancellation takes effect, or 90 days after protection went offline for non-payment. We email a final notice at least 7 days before. Until then you can restore any backup from the plugin, or pay or resubscribe and keep everything. Records we must keep (connection, audit, incident, order-action and billing records) stay for the periods above, then are deleted. If your domain still points at our service, we keep passing its visitors straight through to your server until it no longer does, so your site keeps working; for that we keep only your domain name and its routing settings.
Disconnecting a site does not delete stored backups; ask team@alwaysupwp.com to delete them sooner. During the private beta we are switching automatic deletion on in stages; until it is on for every kind of data above (including the saved copy of your public pages), the rest is deleted by our team, and you can ask us to delete your data at any time.
8. Security
- Backups are encrypted on your server with AES-256-GCM before upload, with a key unique to your site, and go directly to Backblaze through temporary upload links. Stored object names do not reveal file names.
- We hold the encryption key (itself stored encrypted) so you never manage keys. This means we, and operators with access to our key secret and database, can technically decrypt your backups. Each hand-out of the key is recorded in our audit log (once per backup run, or at most once an hour per recipient and purpose).
- While a backup site runs, its server holds your site's key and your decrypted site on its disk, which we do not currently encrypt at rest. Each backup site runs isolated from other sites, and changes copied off it use a separate key.
- Uploads verify the storage server's certificate. Connections, key hand-outs, and backup site, payment and emergency release actions are recorded in an append-only audit log.
- Access tokens are scoped per function.
No system is perfectly secure, and we do not claim ours is.
9. International transfers
We are based in the United States, and our providers process data in the countries in section 6, including the United States and, for AI inputs with personal data removed only, China. Where personal data about people in the EU, EEA, UK or Switzerland is transferred to a country without an adequacy decision, we rely on the European Commission's Standard Contractual Clauses, with the UK International Data Transfer Addendum and the Swiss amendments where they apply, both between you and us (through our Data Processing Agreement) and between us and our providers. Where a provider is certified under the EU-US Data Privacy Framework, we may rely on that as well. AI inputs of customers recorded as EU or of unknown region go only to AI providers that offer a data processing agreement, never to China.
10. Your rights
Depending on where you live, you may have rights to access, correct, delete, restrict or object to our use of your data, to data portability, and to withdraw consent. Email team@alwaysupwp.com. We answer within one month, or within the period the law where you live sets, and we tell you if we need longer and why. If you are in the EU, EEA or UK, you can also complain to the data protection authority where you live or work (in the UK, the Information Commissioner's Office).
If you are a visitor or user of a site that uses AlwaysUp, please contact that site's owner, who controls your data. If you contact us, we will pass your request to them.
Site owners can restore their backups from the plugin, disconnect at any time, and ask us to delete stored data (section 7).
11. Breaches
If we become aware of a breach affecting personal data we process for you, we will tell you without undue delay, and no later than 72 hours after we become aware of it, with what we know, so you can meet your own obligations. For a breach of data we control, we notify the competent authority within 72 hours where the GDPR or UK GDPR requires it, and tell the people affected without undue delay where the breach is likely to put them at high risk.
12. Children
The service is for businesses and website owners aged 18 or over. It is not directed at children, and we do not knowingly collect children's data as a controller.
13. Changes
We post changes here with a new effective date, and email you about material ones at least 30 days before they apply.
14. Contact
WP Tech Group LLC, 30 N Gould St, STE 4000, Sheridan, Wyoming 82801, USA. Privacy and data protection: team@alwaysupwp.com.