Of all the reasons we love and use Jetpack for CSS-Tricks—a poster child WordPress site—is that we can sleep easy at night knowing we have real-time backups running with Jetpack Backup. That way, no matter what, everything that makes this site tick, from all the template files to every single word we’ve ever typed, is always a click away from being restored if we need it for any reason at all.
There’s really no question whether or not you should be backing up your WordPress site. You absolutely should. It’s sort of like being prepared for an earthquake: you know it could happen at any time, so you want to make sure you’ve got all the tooling in place to keep things safe, not if, but when it happens.
What’s your backup plan? For us, it’s logging into WordPress.com, locating which backup to use, and clicking a button to restore things to that point in time. That’s all the files of course, like WordPress itself, the theme, and plugins, but also the entire database and all the media files.

Another reason we love Jetpack Backup? It provides a complete activity log of all the changes that happen on the site. It’s one thing to have your site backed up and be able to restore it. It’s another to know what caused the issue in the first place.

Jetpack Backup offers two plans one for daily backups and the other for real-time backups. We’ve got real-time running around here and that’s a great option for large sites that are updated often, like e-commerce. Most sites can probably get away with daily backups instead.
That leads to another wonderful thing: Jetpack Backup is sold à la carte. That means you can just get backups if that’s all you want from Jetpack. And, hey, if you find yourself needing more from Jetpack, like all the stuff we use it for here, then that rich feature set is just a couple of clicks away.
Not sure what your WordPress backup plan is? You really ought to check out Jetpack Backup. It works extremely well for us and we can’t recommend it enough.
True Story
While working on a bit of content for @css across team members, I noticed some of what I had written had disappeared. It got saved over by accident. I forgot to turn on “Revisions” for this Custom Post Type (it was a newsletter, which we write in WordPress).
It was tempting to be like, “Oh well, I’m a dummy, I’ll just have to remember and re-write it.” But no! I have Jetpack real-time backups on this site. I was able to find the exact moment I made my changes and download a copy of the site at that moment.

I didn’t need to restore the site to that point, just what I had written. So, I loaded up the wp_posts
table from the SQL dump in that backup, plucked out my writing, and put it back in place.
And of course, I enabled revisions for that Custom Post Type so it won’t happen again.

Not only is that a true story, but this is a Jetpack double-whammy, because I “unrolled” that Twitter thread right here in WordPress via a Jetpack feature.
How big are each backups?
As big as every post on your site in plaintext (zipped), every plugin and theme (same), and every bit of media you’ve ever uploaded. Generally: fairly big.
As I have sites on multiple servers, I bought a separate server only for the backups and installed backuppc there (https://backuppc.github.io/backuppc/).
The good thing with backuppc is that you set it up once and then you can put there as many servers as you want. Also, you can backup other parts of the server as well (configuration etc).
Of course, backuppc only backs up files, so I also wrote a simple bash script which uses WP-CLI to back up the databases (you can find it here: https://gist.github.com/gsarig/df16f1896706910532a7661abad00898)
It took me some time to set everything up, but after that I don’t have to do anything at all to backup new sites. As long as a new site gets added on the server, it gets daily backups automatically, without having to install plugins or do any kind of site-specific setup at all.
Personnally I am using UpdraftPlus which works fine and free!
For small sites, just perfect to me.