Skip to main content
Question

How to limit Slack notifications for multiple updates in Google Sheets

  • June 4, 2025
  • 4 replies
  • 22 views

I have a scenario that updates a Google Sheet via users working through a form.

The Google sheet gets updated as a user progress through a form, such as “step 1, step 2, step 3, step 4, etc”.

This allows me to track when users drop off the form.


I have a new scenario that takes the google sheet data (when it gets updated) and pushes the information to a Slack notification.

 

Since the row is updated multiple times within a short time frame (step 1 → 5), it triggers the scenario 5 times. 

My goal is to only act on the information when the user stops submitting information / the last known state.

 

Originally, I thought if I used “delay after queue”, it would solve my answer, such as

  1. New row created/updated (step 1)
  2. Delay queue = 5 minutes 
  3. Pull row information (step 5)
  4. Push data into Slack

What’s happening right now is this is triggering 5 times (when the row gets updated with step 1, step 2, step 3, step 4, step 5), and it’ll push the step 5 (or whatever stage they’re at at the end of the queue time).

How do I solve/modify this where I only get 1 submission?

This post has been closed for comments. Please create a new post if you need help or have a question about this topic.

4 replies

Troy Tessalone
Zapier Orchestrator & Solution Partner
Forum|alt.badge.img+14
  • Zapier Orchestrator & Solution Partner
  • 34072 replies
  • June 4, 2025

Hi ​@Prequel 

First, you need to define how long to “wait” before a “stage” is treated as incomplete, meaning the user stopped filling out the form. (e.g. N minutes)

 

In GSheet columns:

  • You have to track at least an overall timestamp for the last completed stage or separate timestamps for each completed stage.
  • You also need to track whether you already sent a Slack message.

 

Add a Filter as Zap step 2 to check if the Slack message has already been sent.

Help: https://zapier.com/apps/filter/integrations#help

 

You may want to configure separate Zaps to help you control the logic being triggered by specific column values.

 

You can configure additional logic in the Zap to Delay (For) [N minutes], then get the current Row data to use to compare and filter.

The idea being after the Delay you check:

  • if a Slack message has been sent > Filter out
    • meaning it was processed by another Zap Run
  • if a Zap Run was triggered after Stage N, then it needs to check if Stage N+1 was completed after the Delay step
    • If yes, then Filter out
    • If no, then send Slack
    • e.g. if Zap Run was triggered from Stage 1, then after the Delay, check if Stage 2 was completed

 


  • Author
  • Beginner
  • 1 reply
  • June 6, 2025

Hi Troy,

 

This makes sense to do a check (new column in the spreadsheet to track the ‘last step sent’, and only does it if the current step is 1 above that.

 

I thought the point of ‘delay for queue’ was so if there was any information updated in between the initial trigger and the next trigger, it will only take the most recent trigger’s information.


Troy Tessalone
Zapier Orchestrator & Solution Partner
Forum|alt.badge.img+14
  • Zapier Orchestrator & Solution Partner
  • 34072 replies
  • June 6, 2025

@Prequel 

Delay (After Queue) creates a FIFO processing of Zap Runs.

e.g. If 5 Zap Runs are triggered, then Zap Run 1 will process before Zap Run 2, before Zap Run 3, and so on spaced out by the Delay between each Zap Run. (e.g. 1 minute buffer)

 

Info about Delay (After Queue)

https://zapier.com/apps/delay/integrations#help

 

Action: Delay - After Queue

Description: Waits for a set amount of time after the last delay in a given queue.
Used to deal with race conditions and rate-limiting.

 

 


SamB
Community Manager
Forum|alt.badge.img+11
  • Community Manager
  • 9736 replies
  • June 9, 2025

Hi ​@Prequel 👋

Just came across this and wanted to check in. Did Troy's suggestion of adding a Filter and his explanation of how Delay After Queue actions work help you move forward on this?

Let us know if it’s still not running as expected—we’re happy to help further! 🙂