Pullbay X Google Sheets Integration
Google Sheets is the perfect home for App Store review data. It's free, shareable, and lets you analyze reviews with charts, pivot tables, and filters — no coding skills required. This guide shows you how to automatically sync Pullbay reviews to a Google Sheet using Google Apps Script.
Why Log Reviews to Google Sheets?
Shareable: Share the sheet with your team, stakeholders, or investors in seconds
Searchable: Filter reviews by rating, date, country, or keywords
Visual: Create charts showing review trends over time
Collaborative: Add comments, assign follow-ups, and tag team members
No-code analysis: Use built-in functions (AVERAGE, COUNTIF, etc.) to calculate metrics
Backup: Keep a permanent record of all reviews with timestamps
Two Approaches
Google Apps Script (recommended) — write a simple script that calls the Pullbay API and logs reviews directly
Via automation platforms — use Zapier or Make.com as middleware if you prefer not to write code
This guide focuses on the Google Apps Script approach, which is free and requires minimal setup.
Approach 1: Google Apps Script (Direct API Call)
Prerequisites
A Google account and access to Google Sheets
Your Pullbay API key (from the dashboard)
Your app's numeric App Store ID (8–12 digits) or bundle ID (e.g.
com.burbn.instagram)
Create a Google Sheet
Go to sheets.google.com
Click Create and select Blank spreadsheet
Name it (e.g. "App Store Reviews - 2026")
Click OK
Set Up Sheet Columns
In row 1, create these column headers:
A
Date
review.date
B
Score
review.score (1–5)
C
Title
review.title
D
Review
review.text
E
Author
review.userName
F
Version
review.version
G
Country
review.country
H
Review ID
review.id
Starting in row 2, the script will fill in review data automatically.
Test the Script
In the Apps Script editor, click the Run button (play icon)
If prompted for permissions, click Review permissions, select your Google account, and click Allow
Check the Execution log (bottom panel) for output messages
Go back to your Google Sheet. If successful, you'll see review data from row 2 onward.
Set Up Automatic Daily Runs
To run the script automatically every day:
In the Apps Script editor, click the Triggers icon (clock) on the left sidebar
Click Create a trigger
Configure the trigger:
Function to run:
fetchAndLogReviewsDeployment: Head
Event source: Time-driven
Type: Day timer
Time of day: e.g. 9 AM
Click Save
The script now runs automatically at your chosen time every day. Check the Executions log in Apps Script to verify runs succeeded.
Understanding the Script
The script does four things:
Builds the request URL with
appId,country,sort, andmaxItemsas query parametersCalls the Pullbay API with your Bearer token and parses the response envelope (
body.data,body.pricing.creditsCharged,body.requestId)Clears previous rows starting from row 2 (optional — comment out to append instead)
Writes each review to a new row using the actual field names from the API:
score,text,userName,version,country,id
To append new reviews on every run instead of replacing, comment out the delete block:
And change the row assignment in the forEach loop:
Approach 2: Using Zapier or Make as Middleware
If you prefer not to write scripts, you can use Zapier or Make.com:
Follow the Zapier or Make.com integration guides
In the final action, select Add row to Google Sheets
Map the Pullbay fields to your sheet columns using the field names above (
score,text,userName, etc.)Reviews are logged automatically on your chosen schedule
Tips for Analysis and Organization
Color-Code Reviews by Rating
Select the Score column (column B)
Click Format → Conditional formatting
Add rules:
Score = 5: Green background
Score = 4: Light green background
Score ≤ 2: Red background
Click Done
High-priority reviews stand out at a glance.
Create a Pivot Table for Review Trends
Select all your data (including headers)
Click Insert → Pivot table → Create
In the pivot table editor:
Rows: Country
Columns: Score
Values: COUNTA of Review ID
Click Insert
Example output:
US
3
5
12
24
45
GB
1
2
8
18
32
Calculate Key Metrics
Add formulas in a dedicated "Metrics" sheet or row:
Average score:
=AVERAGE(B2:B)Total reviews:
=COUNTA(H2:H)(counts non-empty Review ID cells)Low-rating count:
=COUNTIF(B2:B,"<=2")5-star count:
=COUNTIF(B2:B,5)Latest review date:
=MAX(A2:A)
Set Up Filters
Click any cell in your data
Click Data → Create a filter
Use the filter icons on the header row to show only 1–2 star reviews, a specific country, or a date range
Filters let you focus without changing the underlying data.
Use Multiple Sheets Per App
If you manage multiple apps:
Create a separate sheet tab for each app (rename tabs at the bottom)
Modify the script to write to a named sheet instead of the active one:
Create one trigger per app or pass the app ID as a parameter
Modifying the Script for Advanced Use
Filter by Date (Last 7 Days Only)
Send a Summary Email When Complete
Add this at the end of the script to receive an email after each run:
Paginate Manually (for Very Large Datasets)
maxItems=500 fetches up to 500 reviews in one call (the endpoint maximum). If you want to paginate manually across multiple runs using cursors, store the cursor value in a script property:
Troubleshooting
Rate Limits and Credits
Each time the script runs, it makes one API request. Credits consumed depend on the number of reviews returned:
For example: 200 reviews returned → 201 credits charged.
Rate limits are enforced per API key based on your plan (per-second and per-minute). Running once per day is well within all plan limits. Check the X-RateLimit-Remaining response header or your Pullbay dashboard to monitor usage.
Next Steps
Create your Google Sheet and add the column headers from Step 2
Copy the Apps Script code and set your API key and app ID
Test the script with the Run button and verify the Execution log
Set up a time-based trigger for automatic daily runs
Add conditional formatting, pivot tables, and metric formulas
Share the sheet with your team for collaborative review management
Last updated