Skip to main content

Subscriptions: Troubleshooting Guide

Everything you need to know about how accounts, subscriptions, renewal dates, and revenue works in Hook.

Understanding Subscriptions in Hook

This article helps you work out why an account's status, renewal date, or ARR looks unexpected in Hook - and what to check before raising a support ticket.

Most subscription issues come down to one of four things: how Hook defines active customers, data updating timings, where renewal dates come from, or the difference between subscriptions and expansions.

A subscription in Hook represents a paying contract for a customer. It must have a start date, end date and associated value (e.g. ARR or MRR).

How an account appears in Hook

An account will only appear in Hook if it has ever had at least one active subscription now or in the past. Hook shows all current and previous customers. This means Hook will show accounts which are:

  • Active: They have at least one active subscription (its start date is in the past and end date in the future)

  • Churned: They had an active subscription that ended in the past, i.e. they did not renew past the last renewal date

  • Upcoming: There's a subscription in your system for a date that starts in the future, where the contract is already signed.

Hook will not show accounts that are leads in your CRM, since they are not associated with a paying subscription. Hook does not by default determine if a customer is active or churned using a field on the account level in your CRM - instead, subscription history is used. This is fundamental for understanding patterns in renewal events used for Hook's ML Engagement Levels.

It's possible your Hook instance is configured to show POC or trial accounts. Speak to your Technical Implementation Consultant or reach out to [email protected] to change this if needed.

Four Key Subscriptions Concepts

  • Active status. An account is only active in Hook if it has a subscription with a start date on or before today, and an end date after today. This is separate to any other data in Hook.

  • Time taken to update data in Hook. Changes made in your CRM usually take up to 24 hours to appear in Hook. Rule this out before assuming something is broken.

  • Renewal date. The renewal date shown in Hook is the end date of the current subscription, taken directly from your CRM.

  • Subscriptions compared to expansions. A subscription is the base contract. An expansion is an add-on layered on top. Only a base subscription can determine active status. A customer only associated with an active expansion alone will not appear as an active account in Hook.

Common Causes of Hook Subscription Issues

The following are common causes behind subscription issues in Hook.

  • The subscription record in your CRM is missing, expired, or has an incorrect end date

  • A CRM change was made recently and the 24-hour window has not yet passed

  • The account has an active expansion but no active base subscription

  • The account doesn't meet the agreed criteria for inclusion in Hook (e.g. minimum ARR, product line, region). Check with your Technical Implementation Consultant for this criteria.

  • A duplicate or overlapping subscription record is affecting active/churn status or renewal date.

  • The account renewed early, moving its end date to a new period and dropping it out of a time-filtered report. It's possible Hook does not have this context that the account renewed early.

  • View permissions are scoped to "My accounts", hiding accounts you don't own. This can be updated in Member admin settings.

Troubleshooting Subscription Issues

Account shows as churned when it should be active - or active when it should be churned.

Hook determines whether an account is active by checking if there's a subscription record in your CRM with a start date on or before today and an end date after today. If that condition isn't met, the account shows as churned, regardless of the commercial reality.

  1. Open Subscription History on the account page. Check whether there is a current subscription, or whether the latest one has an end date in the past with nothing after it.

  2. Confirm the subscription is marked as paying and active in your CRM - for example, Salesforce Opportunity Stage = Closed Won, depending on how your organisation defines this and what was agreed in the Hook implementation.

  3. If the CRM record changed in the last 24 hours, wait for the sync to complete before troubleshooting further.

  4. If the account has an active expansion but the base subscription has lapsed, the account will still show as churned. Check the base subscription's end date (renewal date in Hook).

  5. For the reverse case - active when it should be churned - look for a stray or duplicate subscription record with an end date further out than expected, or a renewal record that should not have been created yet.

Find subscription history in the Customer details section on account pages

Account is missing from Hook entirely

Hook only shows accounts that have a subscription record and that you have permission to view.

  1. Check whether the account has any subscription record in the CRM. Accounts still in the sales pipeline with no signed contract will not appear in Hook.

  2. Confirm the account meets your organisation's agreed criteria for inclusion - for example, minimum ARR, specific product line, or region.

  3. Check your view permissions in Member Admin settings. If you are scoped to My accounts and do not own this account, you will see a permission notice rather than the account itself.

Renewal date looks wrong

The renewal date in Hook is read directly from the end date field on the account's current subscription record in your CRM.

  1. Confirm the end date (renewal date) field directly in your CRM (for example, Opportunity Close Date or Contract End Date). Hook will match this exactly.

  2. If your contracts are billed monthly or quarterly but recorded in the CRM as a single multi-year term, Hook shows the full contract end date. Shorter billing cycles are not surfaced as separate renewal dates in the UI.

  3. Check for duplicate or overlapping subscription records on the same account. With more than one in play, confirm which one Hook is treating as current.

  4. If the CRM record was edited recently, allow up to 24 hours for the sync to complete.

Account disappeared from a report after renewing early

Reports filtered on a time window e.g. renewal date in Q3, for example, use the end date of the current subscription. When an account renews early, that end date moves to the new term. The account drops out of the original period's report and reappears in whichever future period the new date now falls into.

  1. Check the account's current renewal date - has it moved to a later date?

  2. If so, this is expected. Re-run or re-filter the report for the period the new date falls in.

  3. If the CRM change is recent, allow up to 24 hours for it to sync before checking again.

  4. If you need to keep tracking this account as "renewed early" for a specific period regardless of where its end date now sits, that requires a custom field. A date-based report filter will always follow the live renewal date, not if a customer renewed early. Contact [email protected] to set this up.

Account status differs by product

Where your organisation sells multiple products, each may be tracked as its own subscription with its own start date, end date, and active status. An account can be active on one product and churned on another at the same time - this reflects the individual contracts.

  1. Use View details by product on the account page to see status, renewal date, and ARR broken out per product.

  2. If the account has multiple contracts sharing the same renewal date, that date will appear against each of them. This is why you may say multiple renewal dates in the Customers table for a single account. This is expected, not a duplicate.

Account is mid-renewal negotiation but not showing as at risk

Hook has no concept of "in negotiation" when it comes to renewal dates, it only reads the raw dates. As long as the current subscription's end date is still in the future, the account shows as active, right up to that date, regardless of how the commercial conversation is going.

  1. This is expected behaviour, not a bug. Status only changes once the subscription's end date has passed with no follow-on subscription in place.

  2. Use Echo signals to surface negotiation risk before the renewal date, based on conversations in meetings and emails. Signals are designed to carry context - such as "in renewal negotiation" or "at risk" - that isn't in the subscription data itself.

  3. If negotiations result in a partial downsell rather than a clean renewal, note that Hook's churn model may treat a large enough downgrade as churn for modelling purposes depending on your organisation's configuration. This is separate from the account's live status and will not change it in the meantime.

❓ Frequently Asked Questions

Can an expansion keep an account active if the base subscription has expired?

No. Only a base subscription can carry active status. If the subscription has lapsed and only an expansion remains, the account will show as churned. The base subscription's end date needs to be current for the account to appear active.

Hook says this account is churned but our CRM shows it as active. Why is there a difference?

Check the specific field Hook uses for the subscription end date (reach out to [email protected] if unsure). For example, if your CRM marks an opportunity as active based on a different field or stage than the one Hook uses, the two systems will disagree. Hook looks at whether start_date is before or on the current date and end date is after the current date on the subscription record. Confirm that field directly, and allow up to 24 hours for any recent changes to sync through.

Why does the renewal date not reflect our billing cadence?

Hook shows the end date on the subscription record in your CRM - it does not adjust for monthly or quarterly billing cycles. If your contract is recorded as a single multi-year term, that full end date is what appears. Shorter billing cycles are used for modelling only and are not shown as separate renewal dates in Hook.

I can't see an account I know exists. Is something broken?

Most likely, one of three things: the account has no subscription record in the CRM yet; it doesn't meet your organisation's agreed inclusion criteria for Hook; or your view permissions are scoped to accounts assigned to you and you don't own this one. Check Member Admin for your permission scope, and confirm the CRM record exists and is complete.

How do I track accounts that are at commercial risk before their renewal date shows a problem?

Use Echo signals. Signals are designed to surface risk based on conversations - context that isn't captured in subscription dates. You can flag accounts as in renewal negotiation or at-risk using signals without waiting for a status change.

Did this answer your question?