Most hosting plans include backups. The catch is that those copies usually sit with the same company as the website. If that provider has an outage, a security incident or an account problem, the site and its backups can disappear together. We wanted a second copy of every client site, stored somewhere completely separate, so a recovery never depends on one company.
We set up a dedicated backup server in a Sydney data centre, away from our main hosting. On it we run WPMgr, a self-hosted WordPress backup manager. It connects to each site and takes scheduled database and full-site backups. Each site has its own weekly slot, so the jobs do not pile up on each other, and we keep four weeks of history for every site.
One method does not fit every site
WPMgr is fine for most sites. Some of our larger ones were too big to back up reliably that way. For those we added a second method: a scheduled FTP pull that copies the files straight to the backup server and packs them into dated archives. Each site is tagged as full, database-only or FTP, so the method matches the size of the site and how often it changes.
We tested every site before we trusted the schedule
Testing was a big part of the job. We ran a manual backup on every site before we scheduled it. That turned up problems we then fixed: a missing server extension, website settings that blocked the backup connection, a security plugin that kept dropping the link to the backup server, and files that stopped an FTP transfer halfway through. We changed schedules, exclusions and site settings until each backup finished cleanly.
The system is documented, with a rebuild guide and a copy of the setup kept in a separate secure location, so we could restore the backup server itself if we ever had to. Email alerts tell us when a backup fails, and we keep adjusting the setup as sites grow or change.