← Resources

Startup Fundraising Pipeline Template

A VC raise is a sales process with a worse conversion rate and a harder deadline. This template gives you the 8-stage pipeline, the exit criteria for every move, the investor-tracking fields that actually matter, and a copy-paste JSON kit to stand it up in your CRM in one conversation.

Who this is for

Founders running a priced seed or Series A raise, and the chiefs of staff or AI agents doing the operational work behind them. Use it the week you decide to raise - before the first email goes out. The most common fundraising failure is not a bad deck; it is a founder running 80 parallel conversations from memory, losing track of who owes what, and letting momentum die in the gaps. The fix is unglamorous: treat investors as deals in a pipeline, with explicit stages and a weekly review.

The framework stands on its own. It works in a spreadsheet, in Notion, or in any CRM. The JSON artifact at the bottom is for teams who want an agent to run it - it is valid against the Relm API as written.

The 8 stages, and what qualifies a move

One rule above all: a stage change requires evidence, not optimism. A deal moves when something verifiable happened - a meeting held, a document requested, a term sheet in hand. "They seemed excited" is not a stage.

StageWhat it meansMoves forward when
ResearchFund identified, thesis fit scored, intro path mapped. No contact yet.You have a named partner and a plan to reach them.
OutreachIntro requested or cold email sent. The clock is running.A meeting lands on the calendar.
First MeetingHeld a call with anyone at the fund - associate, principal, partner.A decision-maker (GP or sponsoring partner) agrees to meet.
Partner MeetingThe person who can champion you at IC is engaged.The fund requests data room access or references.
DiligenceData room open, references being called, model questions coming in.A term sheet is issued.
Term SheetPaper in hand. Now you negotiate and create a market.Signed and wired.
ClosedMoney in the bank. The only stage that counts.-
PassedA no, at any point. Record the reason verbatim.Re-enter at Research next round if the pass reason expires.

Three opinionated calls baked into this design. First, Passed is a stage, not a delete - pass reasons ("too early", "portfolio conflict") are the seed list for your next round, and a fund that passed on your seed is often the first check into your A. Second, no "Interested" stage - every investor performs interest; the pipeline only records actions. Third, First Meeting and Partner Meeting are separate stages, because the single biggest self-deception in fundraising is counting five associate calls as five live deals. Only partner-level engagement predicts a term sheet.

Volume expectations, so you calibrate before you start: from a researched list of 100-150 funds, a well-run seed raise typically lands 30-60 first meetings, 10-20 partner meetings, 3-6 diligence processes, and 1-3 term sheets. If your list is a quarter of that size, the math simply does not close.

Investor-tracking fields

Model each fund as a company, each partner as a contact, and each live conversation as a deal in the fundraising pipeline. Set the deal's value to the target allocation you want from that fund - then the sum of open-stage deal values against your round target is your coverage ratio, readable at a glance. Facts about the fund live on the company; facts about this conversation live on the deal:

FieldOnTypeWhy it matters
fund_sizecompanynumberA $2B fund cannot lead your $3M seed. Filters unrealistic targets early.
stage_focuscompanytextPre-seed / seed / A. Mismatch here is the number one avoidable pass.
check_rangecompanytextTypical first check. Sets your target allocation realistically.
thesiscompanytextOne line on what they say they invest in. Feeds your fit score.
thesis_fitdealnumberYour 1-5 score. Prioritize outreach by fit, not by fund brand.
intro_pathdealtextWho gets you in. Warm intros convert several times better than cold.
can_leaddealbooleanRound math depends on leads. Track it explicitly, ask it early.
next_step + next_step_datedealtext, dateEvery live deal has an agreed next step with a date. No date = stalled.
pass_reasondealtextVerbatim. Decides whether this fund is a Series A candidate.

The artifact: pipeline + fields, copy-paste

One JSON document. The pipeline object POSTs to /v1/pipelines as-is; each entry in fields POSTs to /v1/fields. Custom values are then sent under custom_fields on any create or update - see the docs for the write shapes.

{
  "pipeline": {
    "key": "fundraising",
    "name": "Fundraising",
    "stages": [
      { "key": "research",        "label": "Research" },
      { "key": "outreach",        "label": "Outreach" },
      { "key": "first_meeting",   "label": "First Meeting" },
      { "key": "partner_meeting", "label": "Partner Meeting" },
      { "key": "diligence",       "label": "Diligence" },
      { "key": "term_sheet",      "label": "Term Sheet" },
      { "key": "closed",          "label": "Closed" },
      { "key": "passed",          "label": "Passed" }
    ]
  },
  "fields": [
    { "object": "company", "key": "fund_size",      "label": "Fund size (USD)",      "data_type": "number" },
    { "object": "company", "key": "stage_focus",    "label": "Stage focus",          "data_type": "text" },
    { "object": "company", "key": "check_range",    "label": "Typical check range",  "data_type": "text" },
    { "object": "company", "key": "thesis",         "label": "Thesis (one line)",    "data_type": "text" },
    { "object": "deal",    "key": "thesis_fit",     "label": "Thesis fit (1-5)",     "data_type": "number" },
    { "object": "deal",    "key": "intro_path",     "label": "Intro path",           "data_type": "text" },
    { "object": "deal",    "key": "can_lead",       "label": "Can lead the round",   "data_type": "boolean" },
    { "object": "deal",    "key": "next_step",      "label": "Agreed next step",     "data_type": "text" },
    { "object": "deal",    "key": "next_step_date", "label": "Next step due",        "data_type": "date" },
    { "object": "deal",    "key": "pass_reason",    "label": "Pass reason",          "data_type": "text" }
  ]
}

Apply it with your agent

If your agent is connected to the Relm MCP server (https://api.relmcrm.com/mcp), paste the JSON above plus this prompt - the whole setup is one conversation:

Set up my fundraising CRM in Relm:
1. Create the "fundraising" pipeline exactly as in the JSON below.
2. Register every custom field in the fields array.
3. For each investor on the list I paste next, create: a company
   (the fund, with fund_size / stage_focus / check_range / thesis
   under custom_fields), a contact (the partner, linked to the
   company), and a deal in the fundraising pipeline at stage
   "research" with value_cents set to my target allocation and
   thesis_fit + intro_path filled in under custom_fields.
4. Use test mode first, show me three sample records, then
   replay in live mode after I confirm.

Or create the pipeline directly over REST:

curl https://api.relmcrm.com/v1/pipelines \
  -H "Authorization: Bearer relm_live_..." \
  -H "Content-Type: application/json" \
  -d '{"key":"fundraising","name":"Fundraising","stages":[
    {"key":"research","label":"Research"},
    {"key":"outreach","label":"Outreach"},
    {"key":"first_meeting","label":"First Meeting"},
    {"key":"partner_meeting","label":"Partner Meeting"},
    {"key":"diligence","label":"Diligence"},
    {"key":"term_sheet","label":"Term Sheet"},
    {"key":"closed","label":"Closed"},
    {"key":"passed","label":"Passed"}]}'

Then run the raise on a weekly cadence. Every Monday, give your agent this:

Weekly raise review. In the fundraising pipeline:
- List deals with next_step_date in the past or empty: these are
  stalled. Draft a follow-up for each, referencing the last activity.
- Sum value_cents by stage and compare to the round target: report
  coverage for partner_meeting and later.
- List new passes this week with pass_reason; flag any pattern
  appearing 3+ times, because that is a positioning problem.
- Rank the top 5 research-stage deals by thesis_fit and propose
  this week's outreach.

New to running a CRM through an agent? Start with how to give your AI agent a CRM. The deeper field kit for tracking a raise lives in the fundraising CRM data model, the same stage discipline applied to selling is the B2B SaaS sales pipeline template, and the Monday cadence above is expanded in the weekly sales forecast agent prompt.

FAQ

How many investors should a fundraising pipeline hold?

For a seed round, 100-150 researched funds is the practical range. Conversion is brutal: expect roughly 30-50% of cold-plus-warm outreach to convert to a first meeting, 20-30% of those to a partner meeting, and one to three term sheets from the whole list. A pipeline with 20 names is not a raise, it is a hope.

What qualifies a deal to move to Partner Meeting?

A scheduled meeting that includes a decision-maker: a GP or the partner who would sponsor the deal at the fund's investment committee. A second call with the same associate is not a stage change - it stays in First Meeting. Stage moves track evidence of progress, not calendar activity.

Should I track investors who pass?

Yes. Passed is a stage, not a delete. Record the pass reason verbatim ("too early", "no thesis fit", "portfolio conflict") because it tells you whether to re-approach next round. Founders who keep pass data start their Series A with a warm, pre-qualified list instead of a blank sheet.

Do I need a CRM for fundraising or is a spreadsheet enough?

The framework works in any tool. A spreadsheet holds up to about 30 investors; past that, follow-ups slip and intro paths get lost. An API-first CRM lets an AI agent do the hygiene - logging meetings, flagging stalled deals, drafting the weekly review - so the founder only makes decisions.

What should the deal value be for an investor deal?

Set the deal value to the target allocation you want from that fund, in minor units (value_cents). Keep the fund's typical check range on the company record. Summing open-stage deal values against your round target tells you instantly whether the pipeline can actually fill the round.

Run your raise through an agent

1,000 requests a month on the Free plan, no card. See pricing.

Start free →