Add every new spreadsheet lead to Freshchat as a contact
Every time you add a customer or lead to your Google Sheet, they become a contact in Freshchat, so your team has them on file before the first chat.
Whenever a new row is added to my Google Sheet of customers and leads, add that person to Freshchat as a contact so my agents always have them on file before the first chat. Use a poll trigger on new Google Sheets rows as the trigger for this workflow. Because the trigger fires exactly once per new row and the column-to-field mapping is fixed, build this as a deterministic code workflow with no reasoning step.
For each new row, read the name, email, and phone columns, plus any tag or attribute columns the sheet includes.
If the row has neither an email nor a phone, skip it entirely and do not create a contact, so we never create empty contacts. Only continue when at least one of email or phone is present.
Otherwise, create the matching Freshchat end-user with the Freshchat Create User operation. Map the name onto the user's first and last name, the email onto the email field, and the phone onto the phone field. Map any extra tag or attribute columns onto the user's custom properties so agents see the full profile.
Do not try to look up or de-duplicate contacts first: Freshchat exposes no search-user-by-email operation, so a true upsert is not possible. Since the new-row poll trigger fires exactly once per row, each contact is created exactly once and no lookup is needed.
Additional information
What does this prompt do?
- Watches your Google Sheet and picks up each new customer or lead the moment their row is added.
- Creates a matching contact in Freshchat with their name, email, and phone.
- Copies any tag or attribute columns onto the contact's profile so agents see the full picture before the first chat.
- Skips rows that have neither an email nor a phone, so you never end up with blank contacts.
What do I need to use this?
- A Google account with the spreadsheet where you track new customers or leads.
- A Freshchat account you can connect.
- Columns for name, email, and phone, plus any tag or attribute columns you want carried over.
How can I customize it?
- Point it at a different spreadsheet or tab as your lead list changes.
- Choose which columns map to name, email, phone, and the extra profile details.
- Adjust the skip rule, for example requiring an email specifically before a contact is created.
Frequently asked questions
What happens when I add a new row to the sheet?
Does it update existing contacts or prevent duplicates?
What if a row is missing an email or a phone number?
Can I bring over tags or other details from my sheet?
Do I need a paid Freshchat plan for this?
Related templates
Every night we run your saved Databricks query and refresh a Google Sheet with the results, so your team reads the latest numbers without a login.
Every morning, automatically record yesterday's match results and each league's latest table into a spreadsheet you can chart or pivot.
Every morning we check your list of IP addresses for abusive activity, update your spreadsheet, and alert your team only about the risky ones.
Automatically add every new Azure DevOps work item to a Google Sheets tracker so your team can filter, sort, and report without opening Azure DevOps.
Check key email accounts against known data breaches every weekday, log every exposure to a spreadsheet, and get a Slack alert when a new breach shows up.
Every weekday morning, your team gets one Slack briefing on who's flying today, their live flight status, and any delays or cancellations to act on.
Stop hand-adding leads to Freshchat.
Let every new row in your sheet become a ready-to-chat contact automatically.