Hubspot-admin-skills cleanup-workflows
Audit and remove inactive, test, or deprecated workflows from HubSpot. Identifies workflows that have never enrolled contacts, workflows turned off for 90+ days, and test workflows.
install
source · Clone the upstream repo
git clone https://github.com/TomGranot/hubspot-admin-skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/TomGranot/hubspot-admin-skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/cleanup-workflows" ~/.claude/skills/tomgranot-hubspot-admin-skills-cleanup-workflows && rm -rf "$T"
manifest:
skills/cleanup-workflows/SKILL.mdsource content
Cleanup Workflows
Audit HubSpot workflows to remove dead weight. Unused workflows clutter the automation dashboard and make it harder to understand what is actually running.
Prerequisites
- HubSpot API token in
.env - Python with
installed viahubspot-api-clientuv - Note: The Workflows API may return 403 on some plan tiers. If so, audit manually in HubSpot UI under Automation > Workflows.
Step-by-Step Instructions
Stage 1: Before — Inventory All Workflows
Pull all workflows. The Automation API endpoint for workflows:
import requests headers = {"Authorization": f"Bearer {os.getenv('HUBSPOT_API_TOKEN')}"} response = requests.get( "https://api.hubapi.com/automation/v4/flows", headers=headers, params={"limit": 100} ) workflows = response.json()
For each workflow, record: ID, name, enabled status, type, enrollment count, created date, last updated date.
Stage 2: Execute — Identify Candidates for Deletion
Flag workflows matching any of these criteria:
- Turned off for 90+ days with no plans to reactivate
- Zero enrollments ever (likely test or abandoned drafts)
- Test workflows (names containing "test", "temp", "copy of", "draft")
- Superseded workflows replaced by newer versions
- Error state workflows that have been failing consistently
Before deleting, check:
- Does the workflow feed into another workflow (via enrollment trigger)?
- Does the workflow set properties that other workflows depend on?
- Is there any documentation referencing this workflow?
Stage 3: After — Delete and Document
- Turn off workflows first, wait one week, then delete if no issues arise.
- Document deleted workflows in a cleanup log (name, purpose, reason for deletion).
- Notify workflow owners before deletion.
Stage 4: Rollback
- Deleted workflows cannot be restored.
- Before deleting, screenshot or document the workflow logic (triggers, actions, branches) so it can be recreated if needed.
- HubSpot retains workflow activity history on contact records even after the workflow is deleted.
Tips
- Use folders in the workflows dashboard to organize by team, purpose, or status.
- Prefix draft/test workflows with "[TEST]" so they are easy to identify later.
- Review workflows quarterly as part of the database cleanup routine.