With Kinsta’s external backup add-on, you can easily back up your WordPress site to Amazon S3 or Google Cloud Storage. The external backups feature can be configured for weekly or monthly backups and doesn’t require you to install any plugins or additional tools.

Kinsta’s external backup add-on is a great option if you’re looking for an easy way to handle offsite backups.

To add the external backup add-on to your plan, log in to MyKinsta, click on Sites > [your site] > Backups and select the “External” option. Currently, Amazon S3 and Google Cloud Storage buckets are supported for external backups.

Enable external backups in MyKinsta.

Enable external backups in MyKinsta.

The external backup addon costs $2/month for each site backup plus $1/GB per month for bandwidth. The sample calculations below show how the pricing model works for three sites using external backups.

Keep in mind this example does not include storage costs, which are billed separately and directly by Google Cloud Platform or AWS.

How to Set Up a Google Cloud Storage Bucket for External Backups

To use Google Cloud Storage for your external backups, you’ll first need to set up a Google Cloud Platform (GCP) account. If you already have an account, feel free to move on to the steps below.

If you don’t have a Google Cloud Platform account, sign up here.

Create a Google Cloud Storage Bucket

To create a GCS bucket, go to Storage in the navigation menu.

Create a Google Cloud Storage bucket.

Create a Google Cloud Storage bucket.

Next, click on the Create Bucket button.

Create a Google Cloud Storage bucket.

Create a Google Cloud Storage bucket.

Specify a name for your storage bucket. For ours, we’ve used “kinstalife”.

Name your Google Cloud Storage bucket.

Name your Google Cloud Storage bucket.

Next, select the location type and location for your external backups. Google offers three different location types – region, dual region, multi-region.

The location type you choose should reflect your backup needs. If you’re operating a business that requires mission-critical backup infrastructure with the highest availability and lowest latency, multi-region would be a good choice. On the other hand, if you’re looking for a more basic and inexpensive option for once-a-month backups, region or dual-region would be fine.

After selecting the location type, go ahead and select the location. Depending on which location type you choose, the location options will vary.

For example, the dual-region location type only supports “Americas” and “Europe” at this time. In general, you’ll want to select the location that is closest to you.

Select a region for your GCS bucket.

Select a region for your GCS bucket.

Next, select a storage class for your external backups. It’s important to select the correct storage class for your use case because each class has different storage costs.

If you are unsure about which storage class to choose, we recommend selecting the “Standard” class.

Select a storage class for your GCS bucket.

Select a storage class for your GCS bucket.

Next, choose Fine-Grained for the access control option.

Select an access control policy for your GCS bucket.

Select an access control policy for your GCS bucket.

The “Advanced Settings” section has a few miscellaneous options. These do not need to be changed. After you have reviewed your bucket settings, click Create to finalize the process.

Create your Google Cloud Storage bucket.

Create your Google Cloud Storage bucket.

After the bucket has been created, you should see it in the storage browser.

A newly created GCS bucket.

A newly created GCS bucket.

Create a Service Account

Next, you’ll need to create a service account with permissions to manage your storage bucket. Navigate to “IAM & Admin” in the navigation menu and click on Service Accounts.

Create a GCP service account.

Create a GCP service account.

Click on the Create Service Account button.

Create a GCP service account.

Create a GCP service account.

Give your service account a name, ID, and description. We recommend using “mykinsta-external-backups” or similar to make it clear that this service account is related to Kinsta’s external backups add-on. After you’ve filled out the form fields, click the Create button.

Specify user details for your GCP service account.

Specify user details for your GCP service account.

Next, you’ll need to assign Storage Admin permissions to the service account. This gives the service account the ability to manage files in your Google Cloud Storage bucket.

If you can’t find “Storage Admin” in the list, you can use the search function to find the correct role. After assigning the role, click “Continue” to proceed to the next step.

Add “Storage Admin” permissions to your service account.

Add “Storage Admin” permissions to your service account.

Optionally, you can add a user to serve as the administrator for the service account. While specifying the service account administrator isn’t required, it may be useful if you intend to use the service account for other things in the future.

If you’re an advanced user and have a reason to specify an administrator, feel free to do that here. Otherwise, you can leave it blank. Click Done to finalize the creation of the service account.

Add an admin user to your service account (optional).

Add an admin user to your service account (optional).

Create a Service Account Key Pair

Next, you’ll need to create a key pair to authenticate connections between your service account and MyKinsta. To do this, click on the service account you just created.

Navigate to your service account.

Navigate to your service account.

Scroll down to the bottom of the page to the “Keys” section, and click Add Key and Create New Key.

Create a key pair for your service account.

Create a key pair for your service account.

Select the “JSON” option for the key type, and press Create.

Create a JSON key pair for your service account.

Create a JSON key pair for your service account.

Your browser should automatically download a JSON file containing the key data for your service account. Keep in mind that this JSON file contains a private key and other important information related to your service account. Be sure to keep it in a safe place and don’t share it with anyone unless there’s a reason to do so.

The filename of the JSON file should look something like this:

kinstalife-280115-42d3c1d04a09.json

You’ll need the contents of this JSON file during the external backup setup process in MyKinsta later on. For now, just keep it in a secure location.

Configuring the External Backups Add-on In MyKinsta

You’ll need three pieces of information from Google Cloud to link your storage bucket to Kinsta’s external backups tool.

  1. Google Cloud bucket name
  2. Google Cloud project ID
  3. Your service account’s private key

Google Cloud Bucket Name

To find your Google Cloud bucket name, go to the Storage Browser page in your Google Cloud dashboard and look in the “Name” column. In the screenshot below, our bucket name is “kinstalife”.

A newly created GCS bucket.

Find your bucket name in GCP’s storage browser.

Google Cloud Project ID

To find your Google Cloud project ID, go to IAM & Admin > Settings. The project ID can be found on this page. In the screenshot below, our project ID is kinstalife-280115.

Find your GCP project ID.

Find your GCP project ID.

Service Account Private Key

Your service account’s private key can be found in the previously-downloaded JSON file. You will need to copy the contents of the JSON file into MyKinsta later, so open the file in a text editor. The contents of the file should look something like this:


{
  "type": "service_account",
  "project_id": "kinstalife-280115",
  "private_key_id": "01sxigr0jy9p5przs80gijgcd1ouacn6d417l3ia",
  "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0B...\n-----END PRIVATE KEY-----\n",
  "client_email": "mykinsta-external-backups@kinstalife-280115.iam.gserviceaccount.com",
  "client_id": "043137139116347916375",
  "auth_uri": "https://accounts.google.com/o/oauth2/auth",
  "token_uri": "https://oauth2.googleapis.com/token",
  "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
  "client_x509_cert_url": "https://www.googleapis.com/robot/v1/metadata/x509/mykinsta-external-backups%40kinstalife-280115.iam.gserviceaccount.com"
}

In MyKinsta, go to Sites > Your Site > Backups > External, and click the Choose button under the “Google Cloud Storage” option.

Select the Google Cloud Storage option for external backups.

Select the Google Cloud Storage option for external backups.

Fill in the storage details form with your Google Cloud Storage bucket and service account information.

  1. In the “Google Cloud bucket name” field, paste your bucket name.
  2. In the “Google Cloud project ID” field, paste your project ID.
  3. In the “Service account’s private key” field, paste the contents of your JSON file.
  4. If you want to back up your site to a unique site-specific folder, check the “Create (yoursite) subfolder” box. Click “Next” to proceed to the next step.
Add your GCP credentials in MyKinsta.

Add your GCP credentials in MyKinsta.

Next, choose whether you want to back up your site’s files, database, or both. You can also choose between monthly and weekly backups.

After you’ve made your selections, press Next to continue.

Specify backup type and frequency for your external backups.

Specify backup type and frequency for your external backups.

Finally, review the external backup subscription details and your choice of settings. If you need to make any changes to the backup options, press the “Back” button. If everything looks good, press the Enable External Backups to complete the setup process.

Confirm your external backup configuration.

Confirm your external backup configuration.

You should now see the add-on in the External section of your backups page.

Google Cloud Storage external backup add-on.

Google Cloud Storage external backup add-on.

How to Set Up an Amazon S3 Bucket for External Backups

In order to use Amazon S3 for your external backups, you’ll first need to set up an Amazon Web Services (AWS) account.

If you already have an account, feel free to move on to the steps below. If you don’t have an AWS account, sign up here.

Create an Amazon S3 Bucket

To create an Amazon S3 bucket, click on Services in the menu bar. In the dropdown menu, select S3 under “Storage”.

Create an Amazon S3 bucket.

Create an Amazon S3 bucket.

Click the Create Bucket button to set up your S3 bucket for external backups.

Tired of a slow host? Kinsta is built with speed and performance in mind. Check out our plans

Create an Amazon S3 bucket.

Create an Amazon S3 bucket.

Next, specify a bucket name and region for your S3 bucket. In the screenshot below, our bucket name is “kinstalife” and our region is “US East (Ohio) us-east-2”.

Specify a name and region for your S3 bucket.

Specify a name and region for your S3 bucket.

Make sure the “Block all public access” option is selected. This will prevent your backups from being accessed publicly without authentication. Next, click the Create Bucket button.

Create your Amazon S3 bucket.

Create your Amazon S3 bucket.

You should now see the newly-created bucket in your S3 dashboard.

Your bucket in the S3 dashboard.

Your bucket in the S3 dashboard.

Create an AWS User

Next, you’ll need to create an AWS user, which will be used to provide MyKinsta with access to your S3 bucket. To get started, click on Services in the menu bar, and click IAM under “Security, Identity, & Compliance”.

Navigate to IAM settings in AWS.

Navigate to IAM settings in AWS.

In the sidebar, click on Users under “Access Management”, and click Add User.

Add an IAM user.

Add an IAM user.

Specify a user name for the IAM user. We recommend using a name like “mykinsta-external-backups” that clearly identifies the purpose of the user. For the “access type”, select Programmatic Access and press Next: Permissions to proceed to the next step.

Specify a username and access type for your IAM user.

Specify a username and access type for your IAM user.

On the IAM permission page, select “Attach existing policies directly”. For the policy name, choose AmazonS3FullAccess. If you are unable to find the policy, you can use the search box to search for “S3”.

Assigning the “AmazonS3FullAccess” policy will allow the associated user to access all your AWS buckets. After you have assigned the policy, click Next: Tags to proceed to the next step.

Add the AmazonS3FullAccess policy to your IAM user.

Add the AmazonS3FullAccess policy to your IAM user.

Optionally, you can add IAM tags for the user. This is useful for advanced use cases that require additional user-level metadata. If you do not need to add tags, click Next: Review to proceed to the next step.

Add tags for your IAM user (optional).

Add tags for your IAM user (optional).

Review the details for your new IAM user. If you notice an issue, you can click “Previous” to return to a previous step. If everything looks good, click Create User.

Review the settings for your IAM user.

Review the settings for your IAM user.

Copy the Access Key ID and Secret Access Key to a secure location. Keep in mind that this pair of keys gives access to your S3 buckets, so be sure to keep it in a safe place. You will need the key pair to link your S3 bucket to Kinsta’s external backup tool later on.

Keep your IAM user key pair in a secure location.

Keep your IAM user key pair in a secure location.

In MyKinsta, go to Sites > Your Site > Backups > External, and click the Choose button under the “Amazon S3” option.

Select the Amazon S3 option for external backups.

Select the Amazon S3 option for external backups.

Fill in the storage details form with your S3 and IAM user information.

  1. In the “AWS S3 bucket name” field, paste the name of your S3 bucket.
  2. In the “AWS access key ID” field, paste your IAM user’s access key ID.
  3. In the “AWS secret access key”, paste your IAM user’s secret access key.
  4. If you want to back up your site to a unique site-specific folder, check the “Create (yoursite) subfolder” box. Click “Next” to proceed to the next step.
Add your AWS credentials in MyKinsta.

Add your AWS credentials in MyKinsta.

Next, choose whether you want to back up your site’s files, database, or both. You can also choose between monthly and weekly backups. After you’ve made your selections, press Next to continue.

Specify backup type and frequency for your external backups.

Specify backup type and frequency for your external backups.

Finally, review the external backup subscription details and your choice of settings. If you need to make any changes to the backup options, press the “Back” button. If everything looks good, press the Enable External Backups to complete the setup process.

Confirm your external backup configuration.

Confirm your external backup configuration.

You should now see the add-on in the External section of your backups page.

Amazon S3 external backup add-on.

Amazon S3 external backup add-on.

How to Remove the External Backup Add-on

To remove (and stop) the external backup add-on, go to Sites > Your Site > Backups and click Change.

Remove the external backup add-on.

Remove the external backup add-on.

Click Choose under “No external backups” to remove the external backup add-on from your WordPress site.

Choose the “No External Backups” option.

Choose the “No External Backups” option.

To confirm the removal of the external backups add-on, click Change Backup Settings.

Confirm the removal of the external backup add-on.

Confirm the removal of the external backup add-on.

Note that your next invoice will include external backups from the time of your last invoice to the time of cancellation of the add-on.

Summary

Kinsta’s external backups add-on provides an easy way for you to store WordPress site backups on your Amazon S3 or Google Cloud Storage bucket. If you have any questions about our external backups add-on, reach out to our support team for further assistance.


If you enjoyed this tutorial, then you’ll love our support. All Kinsta’s hosting plans include 24/7 support from our veteran WordPress developers and engineers. Chat with the same team that backs our Fortune 500 clients. Check out our plans