benecaster_subscriber_feed_inactive
Fires once per inactivity event from the daily `SubscriberEngagementCron` when an active subscriber’s podcast app has not polled their feed within the configured inactivity threshold. The threshold defaults to 30 days and is configurable per show via the [benecaster_subscriber_engagement_threshold](/hooks/benecaster_subscriber_engagement_threshold/) filter and via **Settings → Subscribers → Feed inactivity threshold**.
When the threshold is crossed, the token’s `engagement_status` transitions from `’active’` to `’at_risk’`, and this hook fires once. It does not re-fire on subsequent cron runs until the subscriber reactivates (triggering [benecaster_subscriber_feed_reactivated](/hooks/benecaster_subscriber_feed_reactivated/)) and goes inactive a second time. Tokens whose `last_accessed_at` is `NULL` — representing subscribers who have never added the feed to a podcast app — are excluded and handled separately by [benecaster_token_first_accessed](/hooks/benecaster_token_first_accessed/).
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
$user_id |
int |
— | WordPress user ID |
$show_id |
int |
— | ID of the show |
$tier_slug |
string |
— | Tier slug for this subscription |
$days_inactive |
int |
— | Number of days since last feed access |
Examples
Tag inactive subscriber in email platform
add_action( 'benecaster_subscriber_feed_inactive', function (
int $user_id,
int $show_id,
string $tier_slug,
int $days_inactive
): void {
$user = get_userdata( $user_id );
if ( ! $user ) {
return;
}
my_esp_add_tag( $user->user_email, 'podcast-at-risk' );
my_esp_trigger_sequence( $user->user_email, 're-engagement', [
'show_id' => $show_id,
'days_inactive' => $days_inactive,
] );
}, 10, 4 );
Notes
The inactivity threshold is per-show-filterable via benecaster_subscriber_engagement_threshold. A monthly show has a naturally longer listening cadence than a daily one — adjust the threshold per $show_id to avoid false positives. This hook is Free and registers regardless of license status.