✅
Demo to preview the settings
✅
Introduction
This plugin lets authorized users access the details of their Google Analytics accounts and retrieve their reports.
Prerequisites
You must have a Google developer account and Google Analytics account to use the plugin.
- You must create a project with OAuth authentication.
- You must create accounts on Google Analytics.
How to setup
Step 1 – Install the Plugin
- Go to the Plugin Tab
- Open your Bubble Editor.
- Navigate to the Plugins tab on the left panel.
- Add Plugins
- Once in the Plugins tab, click the Add Plugins button.
- Search for the Plugin
- Use the search bar to type Extended Google Analytics
- Locate the plugin in the search results.
- Install/Buy
- Click Install to add it to your application.
- Plugin Installed
- Once installed, the plugin will appear under the Installed Plugins list in your Bubble Editor.
Step 2 - Create a project with OAuth
- For the first time, select your country and accept the Terms of Service.
- Go to Select a project or current project, like in the images below. It will open a pop-up.
- In the opened pop-up, press the NEW PROJECT button.
- Set the Project name and press CREATE.
- After the project creation, select a created project and go to Select a project or current project, like in the images below. It will open a pop-up.
- In the opened pop-up, select created project.
Set up OAuth consent screen
- From the navigation menu select APIs & Services.
- From APIs & Services, select OAuth consent screen.
- Here, select External and press CREATE button.
- On OAuth consent screen step, complete all required fields then press SAVE AND CONTINUE button.
- On the Scopes step, press the SAVE AND CONTINUE button.
- On the Test users step, add your account to be able to test your app, then press SAVE AND CONTINUE button. Also, you can add more accounts for testing.
- On the Summary step, see added info and press BACK TO DASHBOARD.
Create credentials to access enabled APIs
- From APIs & Services, select Credentials.
- From the Credentials page, press CREATE CREDENTIALS button.
- Select OAuth client ID.
- Select Web application for the Application type option.
- Set up the Name option.
- Add Authorized redirect URIs and press CREATE.
You can get an authorized redirect URI from the plugin settings page.
Now you have App ID (Client ID) and App Secret (Client Secret).
Enable Google Analytics API and Google Analytics Reporting API
- From APIs & Services, select Library.
- Scroll down to Other category and select Google Analytics API.
- On opened page, press ENABLE button. It will open library page.
- Go back to the Google Analytics API library. Where you enable the library.
- Scroll down to More products to explore and select Google Analytics Reporting API.
- On the opened page, press ENABLE button. It will open library page.
Step 3 - Create a Google Analytics account
For using this plugin you must have at least one Google Analytics account. If you don’t have one of these, follow the next steps to create one.
- Press Start measuring.
- On the Account setup step, complete all fields and press the Next button.
- On the Property setup step, complete all fields.
- Press Show advanced options.
- Toggle ON Create a Universal Analytics property.
- Input the Website URL that you want to track, select Create both a Google Analytics 4 and a Universal Analytics property, and press the Next button.
- On the About your business step, complete info about your company and press Create.
- Accept Google Analytics Terms of Service Agreement.
- In the opened page, save MEASUREMENT ID (Gtag).
Now you have Gtag!
Also, you can find this Tag from Admin → Account → Property → Data Streams after pressing on wished stream.
- To start collecting data from your websites, consult instructions from View tag instructions.
That is all, now you can use this plugin.
Step 4 - Setup all keys in the plugin
Now, it is time to put all obtained keys in plugin settings.
- Go to the plugin settings page.
- Paste App ID and App Secret in plugin settings. These keys you obtained from the above section How to setup → I. How to create a project with OAuth → Create credentials to access enabled APIs on step 20.
- **Paste Gtag (headers) and Gtag in plugin settings. This key you obtained from the above section How to setup → II. How to create a Google Analytics account on step 10.
☝
**Paste Gtag (headers) and Gtag in plugin settings if you want to collect analytics data from this Bubble app.
Plugin Data Calls
Retrieve Reports GA4
It returns a customized report of your Google Analytics event data.
Fields:
💡
Check the official documentation for more detailed information about the call’s fields.
Title | Description | Type |
Property ID | A Google Analytics GA4 property identifier whose events are tracked. | Text |
Start Date | The inclusive start date for the query in the format YYYY-MM-DD. Cannot be after endDate. The format NdaysAgo, yesterday, or today is also accepted, and in that case, the date is inferred based on the property's reporting time zone. Incorporate the value in quotation marks ("). | Text |
End Date | The inclusive end date for the query in the format YYYY-MM-DD. Cannot be before startDate. The format NdaysAgo, yesterday, or today is also accepted, and in that case, the date is inferred based on the property's reporting time zone. Incorporate the value in quotation marks ("). | Text |
Metric | The name of the metric. See the API Metrics for the list of metric names supported by core reporting methods. Incorporate the value in quotation marks ("). | Text |
Dimension | The name of the dimension. See the API Dimensions for the list of dimension names supported by core reporting methods. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Offset | The row count of the start row. The first row is counted as row 0. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Limit | The number of rows to return. If unspecified, 10,000 rows are returned. The API returns a maximum of 250,000 rows per request, no matter how many you ask for. limit must be positive. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Returns:
☝
The call returns different parameters depending on the inserted values in the call’s fields. Check here for a more detailed response.
Get List of Accounts GA4
It returns all accounts accessible by the caller.
Returns:
☝
The call returns different parameters. Check here for a more detailed response.
Get List of DataStreams GA4
This data call is the lists DataStreams on a property.
Fields:
💡
Check the official documentation for more detailed information about the call’s fields.
Title | Description | Type |
Property ID | A Google Analytics GA4 property identifier whose events are tracked. | Text |
pageSize | The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). | Number (optional) |
pageToken | A page token, received from a previous call. | Text (optional) |
Returns:
☝
The call returns different parameters depending on the inserted values in the call’s fields. Check here for a more detailed response.
RealTime Reports GA4
It returns a customized report of realtime event data for your property. Events appear in realtime reports seconds after they have been sent to the Google Analytics.
Fields:
💡
Check the official documentation for more detailed information about the call’s fields.
Title | Description | Type |
Property ID | A Google Analytics GA4 property identifier whose events are tracked. | Text |
Metric | The name of the metric. See the API Metrics for the list of metric names supported by core reporting methods. Incorporate the value in quotation marks ("). | Text |
Dimension | The name of the dimension. See the API Dimensions for the list of dimension names supported by core reporting methods. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Limit | The number of rows to return. If unspecified, 10,000 rows are returned. The API returns a maximum of 250,000 rows per request, no matter how many you ask for. limit must be positive. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Returns:
☝
The call returns different parameters depending on the inserted values in the call’s fields. Check here for a more detailed response.
Get List of Properties GA4
It returns child Properties under the specified parent Account.
Fields:
💡
Check the official documentation for more detailed information about the call’s fields.
Title | Description | Type |
Account ID | The ID of the account to lookup. | Text |
Returns:
☝
The call returns different parameters. Check here for a more detailed response.
Get Accounts Info GA4
It returns summaries of all accounts accessible by the caller.
💡
Check the official documentation for more detailed information about the call’s fields.
Fields:
Title | Description | Type |
pageSize | The maximum number of resources to return. If unspecified, at most 50 resources will be returned. The maximum value is 200 (higher values will be coerced to the maximum). | Number (optional) |
pageToken | A page token, received from a previous call. | Text (optional) |
Returns:
☝
The call returns different parameters. Check here for a more detailed response.
Plugin Action Calls
RealTime Reports GA4 (action)
It returns a customized report of realtime event data for your property. Events appear in realtime reports seconds after they have been sent to the Google Analytics.
Fields:
💡
Check the official documentation for more detailed information about the call’s fields.
Title | Description | Type |
Property ID | A Google Analytics GA4 property identifier whose events are tracked. | Text |
Metric | The name of the metric. See the API Metrics for the list of metric names supported by core reporting methods. Incorporate the value in quotation marks ("). | Text |
Dimension | The name of the dimension. See the API Dimensions for the list of dimension names supported by core reporting methods. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Limit | The number of rows to return. If unspecified, 10,000 rows are returned. The API returns a maximum of 250,000 rows per request, no matter how many you ask for. limit must be positive. For non-empty values, incorporate the value in quotation marks ("). | Text (optional) |
Returns:
☝
The call returns different parameters depending on the inserted values in the call’s fields. Check here for a more detailed response.
Workflow example
Setup Authorization
In this workflow, it is represented how to add steps for authorization with Google Account.
- On the page, is placed an Authorization button.
- In the workflow, is created an event When Button Authorization is clicked with the following step.
- To add Signup/login with Google Analytics step is necessary:
3.1 To click on Click here to add an action… and select Signup with a social network.
3.2 In the opened pop-up, for OAuth provider option, select Google Analytics.
Getting data from Google Analytics
In this workflow, it is represented how are used some plugin calls for getting data from Google Analytics.
- On the page is placed the following Dropdown element. The Dropdown will contain the list of all available accounts.
- In the Workflow tab, when the User is logged in, the Get Accounts Info GA4 call is used to populate the state “list of accounts” that is used in the Dropdown above.
Detailed Get Accounts Info GA4 call:
- In the Workflow tab, the Dropdown Accounts’s value is changed event has the following steps.
- The first step is used to reset the previous “propertyID” if this exists and to set the “accountID” state.
- The second step is used to set the “propertyID” state.
- Getting the Property Name by using the Get List of Properties GA call.
- Getting reports data by using the Retrieve Reports GA4 call.
- Getting real-time reports data by using the RealTime Reports GA4 call.
How it looks on the preview
☝
Presented data on the page can be customized.
Changelogs
Update 27.11.25 - Version 1.28.0
- Removed depricated features.
Update 12.06.25 - Version 1.27.0
- Marketing update (minor change).
Update 27.11.24 - Version 1.26.0
- Minor update(Marketing update).
Update 19.11.24 - Version 1.25.0
- Minor update(Marketing update).
Update 14.09.24 - Version 1.24.0
- Minor update (Marketing update).
Update 23.07.24 - Version 1.23.0
- Minor update.
Update 13.06.24 - Version 1.22.0
- Updated demo/service links.
Update 27.02.24 - Version 1.21.0
- Migrated actions to Google Analytics 4.
Update 19.10.23 - Version 1.20.0
- Updated description.
Update 18.09.23 - Version 1.19.0
- updated description.
Update 13.09.23 - Version 1.18.0
- minor updates.
Update 11.07.23 - Version 1.17.0
- updated description.
Update 19.06.23 - Version 1.16.0
- Updated the description .
Update 23.02.23 - Version 1.15.0
- deleted the icons.
Update 22.02.23 - Version 1.14.0
- updated the description.
Update 08.11.22 - Version 1.13.0
- Added "id" parameter for "Retrieve Reports v4".
Update 29.07.22 - Version 1.12.0
- Added support for Google analytics v4.
Update 15.07.21 - Version 1.11.0
- Updated icon.
Update 09.06.21 - Version 1.10.0
- added support for more metrics to api call "Retrieve Reports".
Update 14.02.21 - Version 1.9.0
- Minor update.
Update 22.10.20 - Version 1.8.0
- Updated credentials and API Call’s.
Update 02.03.19 - Version 1.7.0
- Minor improvements.
Update 02.03.19 - Version 1.6.0
- minor improvements.
Update 02.03.19 - Version 1.5.0
- minor improvements.
Update 13.05.18 - Version 1.4.0
- Minor improvements.
Update 10.05.18 - Version 1.3.0
- Added offline mode support and real time reports.
Update 26.02.18 - Version 1.2.0
- updated description.
Update 19.09.17 - Version 1.1.0
- Updated Description.
Update 08.09.17 - Version 1.0.0
- Initial Build.