Action Scheduler Data
Database metrics, job statistics, and stuck claim management for Action Scheduler.
The page has two tabs — Database Info and Job Statistics — and two sidebar panels for stuck claim management.
Database Info (1, 2)
Shows the current state of the Action Scheduler database tables on your WordPress site.
Overview Cards (1)
Three cards (1) at the top:
| Card | What It Shows |
|---|---|
| Total Database Size | Combined size of all Action Scheduler tables, with data and index breakdown. |
| Database Version | MySQL or MariaDB version running on your server. |
| Total Tables | Number of Action Scheduler tables detected. |
Table Details (2)
Each Action Scheduler table (2) is shown with its storage engine, row count, total size, and index count. The two main tables are:
wp_actionscheduler_actions— Stores all scheduled, completed, failed, and cancelled actions.wp_actionscheduler_claims— Tracks which actions are currently being processed.
If the actions table is large (hundreds of MB or more), consider using Scheduled Job Deletion to clean up completed actions.
Indexes
Expandable per table. Shows each index name, cardinality (number of unique values), and whether it is a UNIQUE index. Useful for diagnosing slow queries — missing or low-cardinality indexes can cause Action Scheduler processing delays.
Job Statistics
Analyzes Action Scheduler job distribution by hook name and status over a configurable time window.
Overview Cards
| Card | What It Shows |
|---|---|
| Total Jobs | Total number of actions in the selected time range. |
| Unique Hooks | Number of distinct hook types found. |
| Time Range | The currently selected analysis period. |
Controls at the top right:
- Time Range — 24 Hours, 7 Days, or 30 Days
- Limit — Top 5, 10, or 20 hooks
- Refresh — Manual refresh button
Status Distribution
A grid showing the count of actions per status (completed, failed, pending, cancelled, etc.), sorted by count. Statuses with zero actions are greyed out.
Hook Details
Hooks are grouped by base name (e.g. all automatewoo/* hooks appear under one group). Each group shows:
- Group name and hook count badge
- Total action count and percentage of all actions
- Expandable detail table with per-hook counts, first/last scheduled timestamps
Click a group to expand and see individual hooks. This identifies which plugins generate the most background work.
Stuck Claims (3)
A claim is a lock that Action Scheduler places on actions while processing them. If the process crashes or times out, the claim remains — blocking those actions from being picked up again. These are stuck claims.
The Stuck Claims panel (3) in the sidebar shows:
- Total count of stuck claims
- Recent claims — Up to 5 claims with ID, age, and orphaned status
- Age color coding — Yellow (< 2h), orange (2–24h), red (> 24h)
If no stuck claims exist, the panel shows a green "All claims are processing normally" status. The panel auto-refreshes every 5 minutes.
Clearing Stuck Claims
Click Clear All to remove all stuck claims. This:
- Releases the claim lock on affected actions
- Marks the associated actions as failed
- Allows Action Scheduler to retry or skip them
A confirmation dialog shows the number of claims to clear before executing.
Scheduled Stuck Claims Cleanup (4)
The Scheduled Cleanup panel (4) automates stuck claim cleanup on a recurring schedule, similar to Scheduled Job Deletion but for claims.
Creating a Schedule
- Click Add Schedule
- Select an age threshold: all claims, or only those older than 1h, 2h, 6h, or 24h
- Choose an interval: every 24 hours, 7 days, 14 days, or 30 days
- Optionally set a deletion limit per run
Managing Schedules
Each schedule displays:
- Age threshold and interval
- Limit — Claims to clear per run, or "All"
- Next — Countdown to next execution
- Last run — Timestamp of last execution
- Last cleaned — Number of claims cleared in the last run
You can pause/resume, delete, or run immediately any schedule.
FAQ
What size is normal for the actions table?
Size alone is not a reliable indicator — what matters is activity level. A large table on a low-traffic site is less of a concern than a rapidly growing one on a busy store. High-volume WooCommerce sites can reach several GB without issue as long as cleanup is running. Minuttes already reduces unnecessary activity through its critical logger, which limits how often hooks are recorded. If growth is continuous and unbounded, set up automated cleanup of completed and failed actions.
How do stuck claims happen?
A PHP process crash, server timeout, or memory limit hit during action execution. The claim lock is never released, and Action Scheduler won't pick up those actions again until the claim is cleared or expires (default: 5 minutes).
Should I worry about a few stuck claims?
Occasional stuck claims that clear on their own are normal. Persistent or growing stuck claims indicate a recurring processing issue — check server error logs and PHP memory limits.
Which hooks generate the most load?
Use the Job Statistics tab with a 7-day or 30-day range. The hook groups at the top show which plugins are scheduling the most background work. Common heavy users: WooCommerce subscription renewals, AutomateWoo workflows, and analytics plugins.