Skip to main content
Google Sheet Data Fetch Campaigns screen with API Name and Google Sheet List fields, and a Verify Connection button
Google Sheet Fetch lets a WhatsApp bot look something up in a Google Sheet in the middle of a conversation, so it can reply with real information — instead of that information being typed into the bot itself. Think of it like this: Google Sheet Integration is the bot writing into your sheet. Google Sheet Fetch is the opposite — the bot reading from your sheet. Example: say you keep an employee list in a Google Sheet. Someone messages the bot with an Employee ID, and the bot looks that row up and replies with the person’s name, department, and phone number — pulled straight from the sheet. The best part: if you edit the sheet — add a new employee, fix a phone number — the bot’s next reply already uses the updated info. You don’t have to touch the bot at all. This makes it great for anything that changes often: an employee directory, a price list, order status, appointment schedules, inventory, student records, an FAQ list, branch info, or membership details.

How it works

1

A subscriber sends a message

e.g. they message the bot with an ID or trigger keyword.
2

ChatSyncs searches the sheet

using whichever column you configured as the Search Column.
3

The matching row is found

the one row whose Search Column value matches what the subscriber sent (or whatever value you configured as the Search Value).
4

The needed column values are read

from that row.
5

Those values are stored as chatbot variables

ready to use anywhere in a reply.
6

The bot replies using those variables

a personalized message built from live spreadsheet data.
Subscriber message


ChatSyncs searches the Search Column


Matching row found


Column values → chatbot variables


Personalized reply sent

Prerequisite: create matching Custom Fields first

This is the step that’s easy to miss, and the most common reason Google Sheet Fetch shows an error. Every column you plan to map under Assign must already exist as a Subscriber Custom Field — if the field doesn’t exist yet, it won’t be available to select as a Data Field, and the mapping (or the bot reply using it) will fail.
Custom Fields are created under WhatsApp → Subscriber Manager, not inside Settings & Integration:
1

Open Manage Custom Fields

In Subscriber Manager, click Manage, then Manage Custom Fields.
WhatsApp Subscriber Manager page with the Manage dropdown open, showing Manage Labels and Manage Custom Fields
2

Create a field for every column you'll assign

Click Create on the WhatsApp Subscriber Custom Fields page.
WhatsApp Subscriber Custom Fields list with a Create button and a Data has been saved successfully toast
Give it a Custom Field Name and a Reply Type (e.g. Text, Phone, Email) matching what the column holds.
Create Custom Field modal with Custom Field Name set to phone and Reply Type set to Phone
3

Repeat for every field your reply will use

A real example set of custom fields, created ahead of time for an employee-lookup bot:
WhatsApp Subscriber Custom Fields list showing six fields: Phone (Phone), Email (Email), Designation (Text), Department (Text), Name (Text), and employee id (Text)
NameReply Type
PhonePhone
EmailEmail
DesignationText
DepartmentText
NameText
employee idText

Set up the fetch campaign

Connect a Google account and sheet (if you haven’t already)

Connected Google Accounts and a Google Sheets section with Create New Sheet and Add Existing Sheet buttons, and a list of two sheets
Google Sheet Fetch reads from a sheet that’s already connected under Google Sheet IntegrationCreate New Sheet or Add Existing Sheet there first if you haven’t.

Find Google Sheet Fetch in Settings & Integration

Settings & Integration sidebar with Security, E-commerce, Google Sheet, Google Sheet Data Fetch (highlighted), HTTP API, and AI Training Campaign entries
It sits alongside the other integrations, under Control Panel → Settings & Integration.

Create the campaign

Google Sheet Data Fetch Campaigns list with five existing campaigns, and a Connect Your Google Sheet form below with API Name and Google Sheet List fields
Give the connection an API Name, and pick the sheet from Google Sheet List — for example, a sheet called Customer Data containing an employee directory:
Google Sheet named Customer Data with columns Employee ID, Name, Department, Designation, Email, Phone and five rows of employee records
Employee IDNameDepartmentDesignationEmailPhone
EMP001Rahul ReddyITSoftware Engineerrahul@company.com919959623255
EMP002Priya SharmaHRHR Executivepriya@company.com919123456789
EMP003Arjun KumarSalesSales Managerarjun@company.com919988776655
EMP004Sneha PatelFinanceAccountantsneha@company.com919012345678
EMP005Vikram SinghMarketingMarketing Leadvikram@company.com919871234567
The sheet’s first row must be column headers — every column below it becomes a field you can search by or assign.

Search Data and Assign

Search Data mapping Phone to Subscriber ID / Phone Number, and Assign mapping Employee ID, Name, Email, Department, and Designation to their matching custom fields
  • Search Data — which sheet column to search by, and what to compare it against. Here, Phone (the sheet column) is matched against Subscriber ID / Phone Number (the subscriber’s own WhatsApp number) — so the bot automatically looks up the row for whoever is messaging it, with no manual ID entry needed.
  • Assign — map every other column you want back to the Custom Field you created for it: Employee IDemployee id, NameName, EmailEmail, DepartmentDepartment, DesignationDesignation. Click + Map Data to add more pairs.
Click Verify Connection to confirm the sheet is reachable and every mapped field returns real data.
If a Data Field you need isn’t in the dropdown, stop and go create it as a Subscriber Custom Field first (see the prerequisite above) — don’t try to type a new name in on the fly.

Use it inside a Keyword Replies flow

Once the campaign is configured, the actual lookup happens inside a Keyword Replies flow, as a Google Sheet Data Fetch flow step:
Chatbot Manager Keyword Replies Settings list showing several flows including one named google sheet test
Bot flow with a Start Bot Flow node triggered by the keyword data, connected to a Google Sheet Data Fetch node named Google Data, connected to a Text reply node, with a Configure Text Message panel showing the reply using hash-wrapped field variables
1

Start Bot Flow

Set a trigger, e.g. the keyword data with Exact keyword match.
2

Add a Google Sheet Data Fetch step

Pick the fetch campaign you configured above (e.g. Google Data). Use Test Google Sheet New to try it against a real subscriber while building the flow.
3

Reply using the fetched fields

Add a Text step and reference each custom field wrapped in #...#:
Here are your details
Name: #Name#
Employee id: #employee id#
Department: #Department#
Designation: #Designation#,
Email: #Email#

Thank You!
4

Save

Click Save (or Save Changes) on the flow, and Save in the top bar to publish it to the connected WhatsApp number.
With the example data above, a subscriber whose WhatsApp number matches EMP001’s Phone gets:
Here are your details
Name: Rahul Reddy
Employee id: EMP001
Department: IT
Designation: Software Engineer,
Email: rahul@company.com

Thank You!

More examples

Google Sheet Fetch works the same way for any lookup — only the Search Column and the mapped fields change:
Business scenarioSearch ColumnReturns
Employee lookupEmployee IDName, Department, Phone
Product lookupProduct IDProduct Name, Price, Stock
HospitalDoctor IDDoctor Name, Department, Consultation Fee, Available Time
Customer informationCustomer IDCustomer Name, Membership Status, Contact Details
Order trackingOrder IDOrder Status, Courier Name, Tracking Number
Product lookup example — sheet:
Product IDProductPriceStock
P001Wireless Mouse79945
Mapped to product_name, product_price, product_stock, the reply becomes:
Product: Wireless Mouse
Price: ₹799
Available Stock: 45

Benefits

  • No coding required.
  • Always uses live data — update the sheet, not the bot flow.
  • One search can return several fields at once.
  • Works for practically any lookup-style business process.
  • Cuts down on manually rebuilding flows when information changes.

Best practices

  • Create every Subscriber Custom Field before mapping it — this is the #1 cause of a broken or erroring fetch.
  • Always click Verify Connection after mapping fields — a typo in a File Header (it must match the sheet’s actual column header exactly) makes the fetch silently return no data instead of erroring.
  • Keep sheet column headers unique and consistent — don’t rename a column without updating the mapping.
  • Avoid duplicate values in the Search Column — if two rows share the same ID or phone number, the fetch can return the wrong row.
  • Test the full bot flow (not just Verify Connection) before publishing, using Test Google Sheet New inside the flow builder.

Frequently asked

Create a Google Sheet Fetch campaign, map the sheet’s phone-number column to the subscriber’s phone number under Search Data, then map the columns you want back (e.g. Customer Name, Order ID) under Assign to matching Subscriber Custom Fields. Add a Google Sheet Data Fetch step in a Keyword Replies flow and reference the fields in your reply.
The most common cause: one of the fields you mapped under Assign doesn’t exist yet as a Subscriber Custom Field. Go to Subscriber Manager → Manage → Manage Custom Fields, create it there first, then come back and map it.
Search Data tells ChatSyncs which sheet column to match against (how to find the right row — usually the subscriber’s phone number). Assign tells it which columns to pull back, and which Custom Field to store each one in.
Yes — Google Sheet Integration must be connected first so ChatSyncs has access to the account that owns the sheet.
Add a Google Sheet Data Fetch step to a Keyword Replies flow, then in the following Text step, reference each field as #FieldName# — matching the Custom Field’s name exactly.