lastcopy

Your backups are green. Are they good?

Backup monitoring that catches silent failures

Add one curl line to the end of a backup job. It sends the size, file count and run time. Lastcopy learns what a normal run looks like and emails you when a run is missing, fails, or comes in wrong.

fileserver-nightly, 02:00tooksizefilesexitlastcopy
09 Oct4m 12s2.5 GB48,1020normal
10 Oct4m 08s2.5 GB48,1170normal
11 Oct4m 15s2.5 GB48,1400normal
12 Oct4m 10s2.5 GB48,1510normal
13 Oct4s0 B00anomaly
[Lastcopy] ANOMALY on fileserver-nightly
13 Oct 2026, 02:00 UTC
This check-in reported success, but several metrics look wrong. - Backup size collapsed. bytes = 0 B vs 30-run median 2.5 GB. The job reported success but produced far less data than normal. - File count collapsed. files = 0 vs 30-run median 48,140. The job may have backed up almost nothing.
A sample job. The email is what Lastcopy sends, word for word. The mount was empty, tar archived nothing and exited 0.

The failures that hurt report success

tar finds an empty mount and archives nothing. A dump runs against the wrong database. Pruning stops and the repository fills the disk. Each job exits 0, the dashboard stays green, and nobody looks until the day they need a restore.

A cron monitor tells you the job ran. Lastcopy also checks whether the numbers it sent look like the last thirty runs.

The whole integration

your_backup_command \
  && curl -fsS -m 10 --retry 3 PING_URL -d "bytes=$SIZE&files=$COUNT" \
  || curl -fsS -m 10 PING_URL/fail

That goes at the end of the job you already have. There is no agent to install, and Lastcopy never sees your data, only the numbers you send. The docs have recipes for restic, borgmatic, pg_dump, mysqldump, Veeam and rsync. There is also a longer guide to monitoring restic backups and a page on using Lastcopy as a dead man's switch for backups.

Three levels of proof

ran
The job checked in on time and its numbers sit inside what Lastcopy has learned is normal for it. Learning takes 7 runs. You set no thresholds.
verified
Your tool's own integrity check passed, such as restic check --read-data or borg check --verify-data, reported with the same curl line.
drilled
Someone restored from it and checked the contents. Lastcopy schedules drills, reminds you weekly when one is overdue, and records the result.

Every check-in gets the first level. Add the other two on the jobs an auditor will ask about. All three are on every plan.

When the auditor asks

ISO 27001 A.8.13 says backups shall be "regularly tested". SOC 2 auditors ask the same thing in other words. The questions are always when you last restored, what you restored, how long it took and who signed it off.

Lastcopy keeps that record outside your systems. Entries are timestamped when they arrive and there is no edit button. A failed drill stays on the record next to the fix, which tells an auditor more than a page of passes.

drillresultbyRTOtook
14 Jun 2026passadammet30m 42s
09 Dec 2025failjamiemissed1h 13m

Open the sample evidence report. Or read how the register maps to ISO 27001 and SOC 2.

What it won't do

It doesn't run backups or store them. No agent, ever. No marketing email, ever. You get one email when something breaks and one when it recovers, and each one says why it fired.

Price

Free for up to 6 backups, with every feature. Bigger plans are on the pricing page. Everything is free while Lastcopy is in beta, and nothing gets charged without notice.

Who runs this

I'm Adam, an engineer in the UK. I built an early version of this for my own company, where it helped us get through compliance. Lastcopy is that idea done properly, run by one person.

The hosting is paid a year ahead. If I ever shut it down you get months of notice and your records stay exportable as CSV until the last day. Questions and complaints go to adam@getlastcopy.com and I read all of it.

Watch 6 backups free Read the docs first