Practical guide

Your WordPress backup needs a restore exercise, not just a green badge

Find out whether a WordPress backup can restore a usable site. Plan an isolated exercise covering files, database, enquiries and recovery evidence.

Open hard drive with its disk visible
Illustrative stock photograph: Nick / Unsplash.

A backup job can report success while the team still does not know how to recover the site. Test recovery in an isolated environment, with a defined snapshot and a clear acceptance list. The useful question is whether that copy can produce the site you need.

Define the recovery target

List the pages, uploads, settings and retained records that matter. Record the backup time and what happened after it. A recovered copy cannot contain new information that was never backed up, so identify how you would handle newer enquiries or edits.

WordPress’s documentation distinguishes files from the database. A full recovery commonly needs both. Ask your provider what each backup includes and how access to the copy works. Keep that operational information available to the authorised person without putting passwords in a public runbook.

Close-up of the platter and actuator of a hard drive
Illustrative stock photograph, not evidence of our project: benjamin lehman / Unsplash.

Use an isolated destination

Restore to an approved test environment rather than overwrite production for practice. Prevent the test copy from sending customer notifications or calling live connected systems. Check how search visibility and access are controlled in that environment.

This is a recovery planning exercise, not a universal restore command. The required procedure depends on the host, backup system and site configuration. Follow the documented method and involve the responsible operator when the scope is uncertain.

Test the copy in isolation: Choose the recovery target; Restore an isolated copy; Check the acceptance list; Record gaps and recovery time
Test the copy in isolation
Original illustrative guide: Set It Once. A completed backup job does not prove a successful restore.
Read the text version
  1. Choose the recovery target. Record snapshot date and required data.
  2. Restore an isolated copy. Separate files, database and environment.
  3. Check the acceptance list. Pages, synthetic marker and required actions.
  4. Record gaps and recovery time. Document what remains unverified.

Record the acceptance evidence

CheckEvidence
SnapshotBackup identity and timestamp.
PagesRepresentative URLs and correct visible content.
MediaSeveral loaded images and downloadable files.
RecordsExpected retained test record present.
ActionsForms checked without live side effects.
Recovery timeStart, usable state and unresolved work.

Use a synthetic marker created before the backup to distinguish a restored snapshot from an empty installation. Do not include private customer data in screenshots used for general reporting.

Explain what the result does and does not prove

Hypothetical example: the homepage loads, but its images are missing because only the database was restored. That is a partial recovery. A login page alone is also not acceptance; inspect the customer route and the records needed to resume work.

Write down failed checks and their fixes. Repeat the exercise when the backup method or critical architecture changes. Agree an appropriate review frequency with the owner, rather than copying a generic interval without considering the site’s update rate.

A successful exercise proves that a particular copy worked in a particular environment. It does not promise zero downtime or prove that every later backup will be usable. The value is a tested procedure, a known operator and evidence of the gaps you still need to close.

Agree how much lost data and downtime the business can tolerate

Two planning questions matter before choosing backup frequency: how far back could the business accept losing new information, and how long could it operate without the site? These are commonly called recovery point and recovery time objectives. Define them in ordinary business terms rather than selecting an impressive backup interval without checking recovery.

For a hypothetical brochure site, recovering yesterday’s pages may be acceptable while newer enquiries need a separately retained source. For a frequently changing store, losing a day of order records has a different consequence. The objective must reflect actual activity and a workable method for handling records created after the snapshot.

Run an isolated restore as a timed exercise

Record the chosen backup, its timestamp and the components it contains. Prepare the approved isolated destination, prevent indexing and disable live outbound effects using the responsible operator’s documented method. Only then restore. Record when work starts, when the site first loads and when the agreed usable state is reached. These can be different times.

Inspect representative pages, uploads, settings and a known test record from before the backup. A restored database with missing uploads is partial recovery. A visually correct homepage with a broken enquiry route is also incomplete. Do not solve test-environment problems by enabling production email, payments or integrations for convenience.

Plan the gap between the snapshot and the incident

In an illustrative incident, the copy is from midnight and the fault occurs at noon. Identify what changed in those twelve hours: enquiries, edits, uploads or transactions. Decide how the authoritative newer records will be preserved and reconciled. Do not assume that importing every recent row is safe across all plugins and relationships.

Write the operator, prerequisite access, restore steps, validation results and unresolved gap into the runbook. If the exercise exceeds the business objective, investigate whether backup coverage, access, restore method or validation is the bottleneck. A successful exercise is evidence about that copy and procedure. Repeat affected checks when the host, backup tool or critical architecture changes.

Take one practical next step

If recovery checks reveal a missing workflow or tool, describe that gap through custom development. Scope, timing and price are agreed before work starts. An enquiry does not place an order or guarantee a result.

Sources and further reading

Quick answers

Frequently asked questions

Can I test a restore on the live site?

Use an isolated approved environment for practice. A production restore can overwrite newer work and trigger live side effects.

Are database backups enough?

A typical full WordPress recovery needs the corresponding files as well. Confirm the contents of your actual backup.

Should the report include customer records?

Use synthetic evidence and restricted internal checks. Avoid exposing private records in a general recovery report.

Martin Iliev, founder of Set It Once

About the author

Martin builds Set It Once to help people spend less time on repeated work. His guides explain what you can try, how to check the result and where the limits are.

More about Martin

All articles

Privacy & cookie notice

Privacy & cookies

Updated 5 October 2026. This notice covers the public Set It Once marketing website and its enquiry form.

Who is responsible?

Martin Iliev operates Set It Once and is responsible for the personal data collected through this website. For privacy questions or to exercise your rights, email miliev@setitonce.com or use the contact form. You do not need to provide a website address for a privacy request.

What we collect and why

When you send an enquiry, we receive your name, email address, optional website address and message. We use these to respond and take steps towards a possible service agreement at your request (GDPR Article 6(1)(b)). Security and abuse prevention rely on our legitimate interest in protecting the website (Article 6(1)(f)). The form temporarily uses a keyed hash of your IP address to limit repeated submissions for 60 seconds. Hosting infrastructure processes connection information such as IP addresses and requested URLs to deliver and protect the site.

There is no marketing subscription, sale of enquiry data or automated decision-making about you. Do not send passwords, API keys or sensitive client information.

Who can access the information?

Enquiries are stored in the private WordPress administration area and accessed by authorised administrators. Namecheap provides our website and email hosting and processes data to operate these services. Email addressed to miliev@setitonce.com is also forwarded to a Gmail account operated by Google so Martin can receive and handle correspondence. Their privacy notices explain their processing: Namecheap and Google. External links such as LinkedIn load only when you follow them; those websites have their own privacy notices.

International processing

Namecheap and Google may process information outside your country, including in the United States. Namecheap describes the contractual safeguards for covered services in its Data Processing Addendum. Google describes processing locations and safeguards in its Privacy Policy. Contact us if you need details about the processing of your enquiry.

How long we keep information

We retain enquiries while handling the request and necessary follow-up. We review enquiries after six months and remove closed enquiries that are no longer needed. Records required for an active service, a legal obligation or a legal claim may be retained for that purpose. This review covers WordPress records and related email copies; it is a manual review, not automatic deletion. Hosting logs and backups have separate retention arrangements with the provider. You can ask us for information about your particular record or request deletion.

Your rights

You may request access, correction, erasure, restriction, objection and portability where applicable. You may withdraw optional browser-storage consent through Privacy settings without affecting earlier lawful processing. We normally respond to rights requests within one month; legal exceptions may apply. You may complain to your local supervisory authority, including the Bulgarian Commission for Personal Data Protection.

Cookies and browser storage

Google Analytics 4 is optional and loads only after your explicit consent. It measures page visits and basic engagement, using browser/device information and an online identifier. Google processes the network address to provide the service; GA4 does not log or store individual IP addresses. We do not enable advertising features, Google Signals or automatic form tracking. Page URLs and referrers sent by this website exclude query strings and fragments; form contents are not sent. No third-party geolocation service is used. Fonts and images are hosted on this website. Necessary WordPress authentication and security cookies may be used when you sign in. These are separate from optional analytics and currency memory.

LocalStorage is browser storage rather than a cookie; the same preference controls cover it. Automatic currency suggestion uses your browser time zone locally. It is approximate and is not sent to a geolocation provider. If browser storage is unavailable, your choices apply only to the current page.

Online payment processing is not active on this page. Payment-provider information and purchase terms will be added before checkout is enabled.