Whatever it costs you, in time or money, to land a brand-new logo, landing more revenue from a customer you already have costs a fraction of it. They already trust you. They already know the product works, because they are using it right now and paying for the privilege. And yet most seed-stage founders treat expansion as something that happens to them, when a customer emails asking to add seats, rather than something they go and do on purpose.
Say this part first, because it decides everything else
Expansion revenue requires something real to sell that the customer does not already have. A higher tier with genuinely more in it. More seats because more of their team wants access. A module that solves an adjacent problem. If none of that exists yet, if the plan they are on is already everything you offer, then there is no expansion motion to build, no matter how well you work the list. That is a roadmap conversation, not an outreach one, and it is worth having honestly before spending a single hour on this.
Assuming that gap does exist somewhere in your product, the rest of this is genuinely worth doing.
The signals you already have and probably aren't using
A customer approaching a usage limit is telling you something without saying a word. So is a request from someone at that company for one more seat, or for access on behalf of a colleague. So is a champion who changed roles or got promoted, since a promotion at a customer often means either a bigger budget to work with or a successor who has to be sold all over again. Renewal dates are a signal too, and one with an actual clock on it.
Most founders react to these individually, when a customer happens to email about one of them, instead of treating the whole set as a list to work proactively. That reactive posture is why expansion revenue at seed stage is usually smaller and slower than it should be. It is not that customers do not want more. It is that nobody asked at the moment the signal appeared.
Where this becomes real outbound work
Once you have a genuine trigger, the mechanics of the actual conversation are structurally identical to any other piece of outbound: find the right person, which inside an account is very often not the original buyer, write to them in a way that shows you know their specific situation, read carefully what they say back, and get a real conversation on the calendar. The only difference from a cold email to a stranger is that you already have the trust and the usage history to make the message good, which should make the conversion rate on this list considerably better than any list of strangers you could build this week.
It is worth being honest about where a tool like Rocketship actually helps here and where it does not. It cannot see your product's usage data. It does not know when an account crosses a seat limit or when a champion's title changes on LinkedIn; identifying the trigger is still entirely your job, using whatever analytics or plain observation you already have. What it can do, once you know exactly who inside an account needs the conversation, is run the same send-and-read loop it would run on a stranger: write the note from your own inbox, read the reply, and get the meeting on the calendar without that part sitting in your inbox for a week. The judgment about who and when is yours. The mechanics of not letting the conversation go cold are the part software can carry.
Not every account is a candidate this month
A common overcorrection, once a founder decides expansion is worth working, is to write to the entire customer base at once asking if anyone wants to upgrade. That reads exactly like what it is: a revenue push with no specific reason behind it, sent to people who are not near any of the signals above and have no particular reason to want more right now. It tends to annoy the customers you can least afford to annoy, the calm, low-maintenance ones who are happy at their current tier. Work the list where an actual trigger exists, and leave everyone else alone until one shows up. A smaller, well-timed list beats a larger, untimed one on this specific kind of outreach more than almost any other.
Put a rough number on the difference while you're at it. Whatever it costs you in time to research, reach, and close one new company that has never heard of you, reaching an existing customer who is already near a usage limit takes a fraction of that effort, because you skip the entire first half of the conversation: establishing that the problem is real and that you can solve it. They already know both. The only new information in the conversation is that more of what they already have is available, and that message alone converts at a rate a cold list rarely touches.
Renewal is a deadline, so use it like one
A renewal date is the one piece of this with a real clock attached. Waiting for the customer to bring up an upgrade before their renewal, or worse, only noticing there was an opportunity after they renewed at the same tier, wastes the one moment when a bigger conversation is naturally on the table. Build the habit of reaching out with a genuine reason a month or two ahead of every renewal, not to defend the existing deal but to ask whether more of the team, or more of the product, is worth adding while the contract is already open for discussion.
Cheap pipeline, if the ingredients are there
Expansion revenue is the closest thing to free pipeline a company has, but only under two conditions: there has to be something bigger to sell, and somebody has to notice the signal and act on it instead of waiting for the customer to ask first. Get both of those right and the work of pointing a proven outreach loop at your own customer list, instead of at strangers, is some of the highest-converting selling you will do all year.
