benecaster_subscription_tier_changed
Fires when a subscriber moves from one tier to another in either direction — upgrades and downgrades. The subscriber’s token record is updated to reflect the new tier before this hook fires, so feed content changes immediately on the subscriber’s next poll.
Not all bridges fire this hook natively. MemberPress does not have a tier-change event — tier changes appear in Benecaster as a cancellation followed by a new activation. If you are using MemberPress and this hook does not fire when expected, use [benecaster_subscription_activated](/hooks/benecaster_subscription_activated/) and compare the incoming tier against your own stored record of the subscriber’s previous tier. Check your bridge’s documentation if this hook does not fire as expected.
Parameters
| Name | Type | Default | Description |
|---|---|---|---|
$user_id |
int |
— | WordPress user ID |
$show_id |
int |
— | ID of the show |
$old_tier_slug |
string |
— | Previous tier slug |
$new_tier_slug |
string |
— | New tier slug |
Examples
Update CRM on tier upgrade or downgrade
add_action( 'benecaster_subscription_tier_changed', function (
int $user_id,
int $show_id,
string $old_tier_slug,
string $new_tier_slug
) {
$email = get_userdata( $user_id )->user_email;
my_crm_update_contact_field( $email, 'podcast_tier', $new_tier_slug );
my_crm_add_note( $email, sprintf(
'Tier changed from %s to %s for show %d',
$old_tier_slug,
$new_tier_slug,
$show_id
) );
}, 10, 4 );
Notes
This is a Premium hook — it fires only when a valid license is active.