Shared Throttle
Overview
Section titled “Overview”What it does: Lets you create named throttle queues at the portal level that any workflow can reference. Multiple workflows sharing the same queue are throttled together under a single combined rate limit.
When to use it: When you need a global rate limit that spans multiple workflows — for example, capping total email sends across all campaigns, or enforcing an API rate limit that several integrations share.
How it differs from Throttle V2: Throttle V2 creates a separate queue per workflow action — each action manages its own rate independently. Shared Throttle creates a single queue that multiple workflows feed into, so the rate limit applies to the combined volume.
Business value: Prevents over-communication by enforcing organization-wide limits. Instead of guessing how to split a rate limit across individual workflows, you define one shared cap and every workflow respects it automatically.
Quick Setup
Section titled “Quick Setup”Prerequisites
Section titled “Prerequisites”- Daeda Essentials installed on your HubSpot portal
- Understanding of your desired combined rate limit
Step 1: Create a Shared Queue (Settings)
Section titled “Step 1: Create a Shared Queue (Settings)”- Open Daeda Essentials in your HubSpot portal
- Go to the Settings tab, then click Shared Throttle
- Click Create Shared Queue
- Configure the queue:
- Display Name — a human-readable label (e.g. “Email Daily Cap”)
- Queue Key — auto-generated from the display name. Uses lowercase letters, numbers, hyphens, and underscores only
- Batch Size — how many records to release per interval
- Every and Unit — the interval between releases (e.g.
30Seconds) - Execution Days (optional) — restrict releases to specific days of the week. Leave blank to run every day
- Initial Datetime (optional) — when the first release should happen (ISO timestamp, e.g.
2026-03-26T09:00:00) - Status — Active or Inactive. Inactive queues stay visible in settings but can’t be selected by workflow actions
- Click Save Changes
Step 2: Use the Queue in a Workflow
Section titled “Step 2: Use the Queue in a Workflow”- Add the Shared Throttle action to your workflow
- Select your queue from the Queue dropdown (it lists all active queues you’ve created)
- Optionally set Execution Priority to control which records release first
- That’s it — any workflow using this queue shares the same rate limit
Settings Configuration
Section titled “Settings Configuration”Shared queues are created and edited from the side panel so the queue monitoring table stays visible while you configure them.
Queue Definition Fields
Section titled “Queue Definition Fields”Display Name (required)
Section titled “Display Name (required)”- Description: Human-readable name shown in the workflow action dropdown and the queue management table
- Example:
Marketing Email Cap,API Rate Limit - Enrichment
Queue Key (auto-generated)
Section titled “Queue Key (auto-generated)”- Description: Auto-generated from the display name. Uses lowercase letters, numbers, hyphens, and underscores only
- Example: Display name “Test Throttle 1” generates key
test_throttle_1 - Notes: Used internally to route records to the correct queue
Batch Size (required)
Section titled “Batch Size (required)”- Description: How many records are released from the queue each interval
- Example:
100(releases 100 records per interval)
Every (required)
Section titled “Every (required)”- Description: The duration value for the release interval
- Example:
30(combined with unit for “every 30 seconds”)
Unit (required)
Section titled “Unit (required)”- Description: Time unit for the interval
- Options: Seconds, Minutes, Hours, Days
Execution Days (optional)
Section titled “Execution Days (optional)”- Description: Restrict releases to specific days of the week. Leave blank to run every day
- Options: Monday through Sunday (multiple selection)
- Default: Every day
Initial Datetime (optional)
Section titled “Initial Datetime (optional)”- Description: When the first batch release should happen
- Format: ISO timestamp (e.g.
2026-03-26T09:00:00) - Notes: Uses your HubSpot portal’s timezone (shown at the top of the settings page)
Status (required)
Section titled “Status (required)”- Description: Set the queue to Active or Inactive
- Default: Active
- Notes: Inactive queues stay visible in settings but cannot be selected by the workflow action and are ignored by the worker
Workflow Action Fields
Section titled “Workflow Action Fields”Adds a record to a portal-managed shared throttle queue so multiple workflows can coordinate one release rate. When you add the Shared Throttle action to a workflow, you only need to configure two fields:
Shared Queue (required)
Section titled “Shared Queue (required)”- Type: Dropdown
- Description: Select which shared queue this workflow should use
- Notes: Only active queues appear in the dropdown. The description shows the queue’s rate (e.g. “100 every 30 seconds”)
Execution Priority (optional)
Section titled “Execution Priority (optional)”- Type: Property selector
- Description: Controls execution order within the queue
- Default: No priority (first-in-first-out)
- Example:
{{task.hs_task_priority}}or a numeric property (0-9 scale, higher = first) - Notes: Supports HubSpot priorities (HIGH, MEDIUM, LOW, NONE) or numeric values 0-9
Common Use Cases
Section titled “Common Use Cases”Use Case 1: Email Frequency Safeguard
Section titled “Use Case 1: Email Frequency Safeguard”Scenario: You run multiple email campaigns and want to cap total sends to 200 per hour across all of them — regardless of how many workflows are running.
Queue Setup:
- Display Name:
Email Hourly Cap - Batch Size:
50 - Every:
15Minutes - Execution Days: Monday-Friday
Workflow Setup: Add the Shared Throttle action before each email send step in every campaign workflow, selecting the Email Hourly Cap queue.
Result: No more than 50 emails are sent every 15 minutes (200/hour max), combined across all campaigns. On weekends, sends are paused entirely.
Use Case 2: Shared API Rate Limit
Section titled “Use Case 2: Shared API Rate Limit”Scenario: Your organization has 3 workflows that call the same external API, which has a rate limit of 100 requests per hour.
Queue Setup:
- Display Name:
External API Limit - Batch Size:
10 - Every:
6Minutes
Workflow Setup: Add the Shared Throttle action before the API call step in all 3 workflows.
Result: Total API calls across all workflows never exceed 100/hour, even if one workflow has a spike in enrollments.
Use Case 3: Cross-Campaign Outreach Pacing
Section titled “Use Case 3: Cross-Campaign Outreach Pacing”Scenario: Sales team runs outbound email + LinkedIn + phone sequences. You want a combined daily outreach cap of 100 per day across all channels to avoid overwhelming prospects.
Queue Setup:
- Display Name:
Daily Outreach Cap - Batch Size:
100 - Every:
1Days - Execution Days: Monday-Friday
- Initial Datetime:
2026-01-06T09:00:00(start at 9 AM)
Workflow Setup: Add the Shared Throttle action in each outreach workflow (email, LinkedIn, phone).
Result: Total outreach across all channels is capped at 100/day, released at 9 AM on business days.
How It Works
Section titled “How It Works”- Queue Definition: You create a named queue in Settings with your desired rate limit
- Workflow Enrollment: When a record hits the Shared Throttle action in any workflow, it’s added to the named queue
- Combined Queuing: Records from all workflows using the same queue are merged into a single line
- Batch Release: The configured number of records are released at each interval
- Priority Ordering: Higher priority records are released first within each batch
- Day Filtering: Releases only happen on selected days (if configured)
- Continuation: Released records continue to the next action in their respective workflows
Key Difference from Throttle V2
Section titled “Key Difference from Throttle V2”| Throttle V2 | Shared Throttle | |
|---|---|---|
| Scope | Per workflow action | Per portal (shared) |
| Configuration | Set up in each workflow action | Set up once in Settings, select in workflows |
| Queue | One queue per action | One queue shared by many workflows |
| Best for | Rate-limiting a single workflow | Enforcing combined limits across workflows |
Pausing Behavior
Section titled “Pausing Behavior”- If a queue is set to inactive in Settings, workflows will receive an error when trying to enqueue records
- Records already in the queue are retained and will resume processing when the queue is reactivated
- If an individual workflow is turned off, its records remain in the shared queue and will still be released — but the workflow callback won’t execute until the workflow is turned back on