# Look up any customer's product usage before the call

> Search any customer by email and see their product activity, CRM record, and cohorts on one screen, then log a summary back to the CRM.

- Workflow type: app
- Services: Amplitude, HubSpot, Slack
- Categories: Sales, Customer Support
- Published: 2026-08-14

## What it does

- Search for anyone by email, user ID, or analytics ID and pull up a single profile built from your Amplitude product data, so you are not piecing together context across tabs five minutes before a call.
- See their activity timeline right next to their HubSpot record: first seen, last seen, session count and top events on one side, lifecycle stage, owner and company on the other, plus every cohort they belong to.
- Get a prominent banner when someone has no activity in the last 14 days, because a quiet account changes how the conversation should go.
- Take action without leaving the page: write a usage summary into the CRM as a note, add or remove someone from a cohort like Beta invites or At risk, and share the profile into a Slack channel.

## What you'll need

- An Amplitude account, with manager or admin access so you can get the project keys the app connects with
- A HubSpot login that can view contacts and add notes
- A Slack workspace, for sharing a profile into a channel
- Customer emails or user IDs that match what your product already sends to Amplitude, since that is how the two systems line up

## Prompt

Build me a product usage lookup console that our customer success and sales reps open right before a customer call, so they stop walking in blind on adoption. It is a pull based tool for one named person at a time, not a scheduled report.

The main screen is a search bar. A rep types an email address, a user ID, or an Amplitude ID and gets back the matching person. Use Amplitude Search Users (Find by Identifier) to resolve whatever they typed. This step is required before anything else can load, because Get User Activity keys off the Amplitude ID, so an email or user ID has to be resolved into that ID first. If the search returns more than one match, show a short picker listing the candidates with their user ID and last seen date so the rep chooses the right person. If nothing matches, say so plainly and suggest trying the other identifier types.

Once a person is selected, open the profile view. Pull their event stream and user properties with Amplitude Get User Activity and render the events as a reverse chronological timeline. Above the timeline show a summary strip with first seen, last seen, total session count, and top events by frequency. Important: this endpoint pages with a limit (default 100, maximum 1000) and an offset, so do not assume a single call returns the full history. Load the most recent page first and give the timeline a load more control that fetches the next page by increasing the offset, stopping when fewer events come back than the limit requested.

If there are no events in the last 14 days, show a prominent stale usage banner at the top of the profile, above everything else, saying how many days it has actually been. This is the number that changes the conversation, so it should be impossible to miss rather than buried in the timeline. Make the 14 day threshold easy to change in one place.

Next to the usage timeline, show the person's CRM record. Look them up with HubSpot Search Contacts using their email address and display lifecycle stage, contact owner, and associated company. If no contact matches, show an empty state saying they are not in the CRM yet rather than an error, and disable the note action while leaving the rest of the page fully usable.

Also show which Amplitude cohorts this person belongs to. Use List Cohorts to get the cohorts in the project and display the ones that include this user as labelled chips on the profile.

Three actions live on the profile. First, write a usage summary back to the CRM with HubSpot Create Note, associated to that contact, so the context lives where the rest of the account history already is. Generate a draft summary from the activity data covering last seen, session trend, top events, and any notable gaps, and let the rep edit it before saving. Second, add or remove the person from a cohort such as Beta invites or At risk using Update Cohort Membership, and when the target cohort does not exist yet, create it with Upload Cohort instead. Third, share the profile into a channel with Slack Send a Message, posting a compact readable summary rather than a raw data dump.

Keep a per rep history of recent lookups in a side panel, most recent first, showing the person's name or email and when they were last opened. Clicking an entry reloads that profile. This history is private to each rep, not shared across the team, so everyone can jump back to the accounts they are working this week.

Handle the slow parts gracefully. The search and the profile load are separate steps, so show loading states rather than blocking the whole page, and if the CRM lookup or the cohort list fails, still render the usage timeline instead of failing the entire profile.

## How to customize

- Change the stale usage threshold from 14 days to whatever your team treats as quiet, such as 7 days for a fast onboarding motion or 30 for annual contracts
- Pick which cohorts get one-click add and remove buttons on the profile, so reps see Beta invites and At risk rather than a long list
- Set the default Slack channel for sharing and adjust what the CRM usage summary includes before it gets saved

## FAQ

### Do I need to be technical to use this?

No. Someone sets up the Amplitude, HubSpot, and Slack connections once, and after that reps just type an email into a search box and read the profile that comes back.

### What if the person is not in our CRM yet?

The profile still loads with their product usage and cohorts, and the CRM panel simply shows that no matching contact was found. You can still share the profile to Slack, you just cannot attach a note until the contact exists in HubSpot.

### Our analytics and CRM sometimes use different email addresses. Will lookups still work?

You can search by email, user ID, or Amplitude ID, so if the email does not match you can fall back to the user ID your product uses. The CRM panel matches on email, so mismatched addresses are the main reason a contact does not appear, and it is worth cleaning those up over time.

### Does the whole team see my lookup history?

No. The recent lookups panel is per rep, so each person sees only the accounts they have been working on and can jump straight back to them.

### What happens when I add someone to a cohort?

They are added to that cohort in Amplitude, exactly as if you had done it there. If the cohort does not exist yet, the app creates it for you, so you can spin up something like At risk on the spot.

### How much of the activity timeline loads at once?

The most recent activity loads first and there is a load more control for going further back, which keeps the page fast for heavy users with long event histories.

Use this prompt in General Input: https://www.generalinput.com/prompts/look-up-any-customers-product-usage-before-the-call