← Back to Docs

Delay a Zapier Step Longer Than 30 Days

Zapier's Delay step can hold a task for about a month at most; longer delays fail with "Delay date can not be longer than 1 month", and Zapier advises against chaining delays. If you need an action 45 days, 90 days or a year after a trigger (a renewal reminder, an end-of-trial check, an anniversary email), you can let RunLater hold the date and call a Zap when it arrives.

1. Make the second half of the flow its own Zap

  1. Create a Zap with the trigger Webhooks by Zapier → Catch Hook.
  2. Copy the hook URL (it looks like https://hooks.zapier.com/hooks/catch/...).
  3. Add the actions that should happen later (send the email, update the CRM, post to Slack).

2. Schedule a one-time request for the exact date

  1. In RunLater, create a request with type One-time.
  2. URL: your Catch Hook URL. Method: POST.
  3. Body: the data the later Zap needs, for example {"email": "pat@example.com", "plan": "annual"}
  4. Date and time: when it should fire, in your timezone. There is no 30-day limit.

3. Optional: create the request automatically

RunLater does not have public API keys yet, so today you create these requests in the dashboard. That suits a handful of long delays a week. If you need to create hundreds from code, an API-first scheduler such as Posthook fits better (see RunLater vs Posthook).

Why not a Google Calendar event?

Zapier suggests using a Calendar event start as a long-delay trigger, which works. A scheduled request keeps the payload with the timer, retries if Zapier is briefly unavailable, and shows a log of exactly what was sent and what Zapier answered.