Download
Setup guide

Three steps, done once.

TurtleReport uses your own Google Cloud project, so your data goes straight from Google to your site. After that, adding a client takes a minute.

Watch the whole setup in under a minute. No sound needed.

You need: WordPress 6.3 or later, PHP 7.4 or later, and HTTPS for Google sign-in. The same guide is inside the plugin, under TurtleReport → Setup guide.
1

Create a Google Cloud project

About 5 minutes · free

  1. Open the Google Cloud console and create a project (any name, for example "TurtleReport").
  2. In APIs & Services → Library, enable Google Search Console API, Google Analytics Data API and Google Analytics Admin API.
These APIs are free for normal reporting use. Business Profile comes later, only if you want it.
2

Connect your Google account

Choose one method

  1. Sign in with Google (recommended). Set up the consent screen, choose External, then click Publish app so it reads "In production". Apps left in Testing lose their sign-in after 7 days.
  2. Or use a service-account key. It never expires and doesn't depend on a person's account. Add its email as a user in each Search Console and GA4 property. It can't read Business Profile.
"Google hasn't verified this app"? That's expected for your own app: click Advanced, then continue. You don't need Google verification for your own use.
3

Add a client website

About a minute per client

  1. In TurtleReport → Sites & access, click Add site and pick its Search Console and GA4 properties.
  2. Choose what counts as a lead from the GA4 key events offered.
  3. Choose who can see the report, and whether it's emailed on a schedule.
Click Check connection on the Connections screen any time to see what a connection can read.

Business Profile (optional)

Google keeps these APIs closed until it approves your project. Apply with "Application for Basic API Access", then use Google sign-in.

Sign-in stops after a week?

Your OAuth app is still in Testing. Open Google Auth Platform → Audience, click Publish app, then reconnect.

A property list says "None"?

The connected account has no access, a consent box was left unticked, or an API isn't enabled. Then click "Reload lists from Google".