{
  "slug": "fundraising-event-roi",
  "title": "Fundraising Event ROI Calculator",
  "heading": "Fundraising Event ROI Calculator",
  "category": "financial",
  "url": "https://www.revenuelab.fyi/toolbox/fundraising-event-roi",
  "summary": "Net revenue, cost per dollar raised, and break-even attendance for a gala.",
  "description": "Galas look profitable until you count staff hours. The sector benchmark is a cost of about $0.50 per dollar raised for special events — far worse than mail or major gifts. Run the real numbers before committing a year of staff time.",
  "formula": "Net = (tickets + sponsorships + auction + appeal) − (venue + F&B + production + staff time).",
  "dateModified": "2026-09-30",
  "run_url": "https://www.revenuelab.fyi/api/public/calc?tool=fundraising-event-roi",
  "inputs": [
    {
      "id": "attendees",
      "label": "Attendees",
      "kind": "number",
      "hint": null,
      "default": 220,
      "unit": null,
      "min": 1,
      "max": null
    },
    {
      "id": "ticket",
      "label": "Ticket price",
      "kind": "number",
      "hint": null,
      "default": 175,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "sponsor",
      "label": "Sponsorship revenue",
      "kind": "number",
      "hint": null,
      "default": 45000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "auction",
      "label": "Auction & raffle net",
      "kind": "number",
      "hint": null,
      "default": 28000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "appealPer",
      "label": "Paddle raise per attendee",
      "kind": "number",
      "hint": null,
      "default": 90,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "perPerson",
      "label": "Venue & catering per person",
      "kind": "number",
      "hint": null,
      "default": 95,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "fixed",
      "label": "Production, AV, printing",
      "kind": "number",
      "hint": null,
      "default": 18000,
      "unit": "$",
      "min": 0,
      "max": null
    },
    {
      "id": "staffHours",
      "label": "Staff hours invested",
      "kind": "number",
      "hint": null,
      "default": 420,
      "unit": null,
      "min": 0,
      "max": null
    },
    {
      "id": "staffRate",
      "label": "Loaded staff cost per hour",
      "kind": "number",
      "hint": null,
      "default": 42,
      "unit": "$",
      "min": 0,
      "max": null
    }
  ],
  "outputs": [
    {
      "id": "trueNet",
      "label": "Net after staff time",
      "format": "currency",
      "hint": null,
      "primary": true
    },
    {
      "id": "net",
      "label": "Net cash raised",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "revenue",
      "label": "Gross revenue",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "costPerDollar",
      "label": "Cost per dollar raised",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "perAttendee",
      "label": "True net per attendee",
      "format": "currency",
      "hint": null,
      "primary": false
    },
    {
      "id": "breakeven",
      "label": "Break-even attendance",
      "format": "number",
      "hint": null,
      "primary": false
    }
  ],
  "worked_example": {
    "inputs": [
      "Attendees: 220",
      "Ticket price: 175 $",
      "Sponsorship revenue: 45000 $",
      "Auction & raffle net: 28000 $",
      "Paddle raise per attendee: 90 $",
      "Venue & catering per person: 95 $",
      "Production, AV, printing: 18000 $",
      "Staff hours invested: 420",
      "Loaded staff cost per hour: 42 $"
    ],
    "outputs": [
      "Net after staff time: $74,760",
      "Net cash raised: $92,400",
      "Gross revenue: $131,300",
      "Cost per dollar raised: $0.43",
      "True net per attendee: $340",
      "Break-even attendance: -219"
    ]
  },
  "how_to": {
    "title": "How to use this",
    "steps": [
      "Enter attendees.",
      "Enter ticket price ($).",
      "Enter sponsorship revenue ($).",
      "Enter auction & raffle net ($).",
      "Enter paddle raise per attendee ($).",
      "Enter venue & catering per person ($).",
      "Enter production, av, printing ($).",
      "Enter staff hours invested.",
      "Enter loaded staff cost per hour ($).",
      "Read your net after staff time on the right — it updates as you type.",
      "Hit Share to keep the scenario or send it to someone."
    ]
  },
  "scenarios": [
    {
      "name": "Conservative",
      "description": "Lower-end numbers — what if things land soft?",
      "values": {
        "attendees": 130,
        "ticket": 105,
        "sponsor": 27000,
        "auction": 17000,
        "appealPer": 55,
        "perPerson": 55,
        "fixed": 11000,
        "staffHours": 250,
        "staffRate": 25
      }
    },
    {
      "name": "Typical",
      "description": "Defaults — the most common real-world setup.",
      "values": {
        "attendees": 220,
        "ticket": 175,
        "sponsor": 45000,
        "auction": 28000,
        "appealPer": 90,
        "perPerson": 95,
        "fixed": 18000,
        "staffHours": 420,
        "staffRate": 42
      }
    },
    {
      "name": "Ambitious",
      "description": "Higher-end numbers — what if things really pop?",
      "values": {
        "attendees": 350,
        "ticket": 280,
        "sponsor": 72000,
        "auction": 45000,
        "appealPer": 145,
        "perPerson": 150,
        "fixed": 29000,
        "staffHours": 670,
        "staffRate": 67
      }
    }
  ],
  "limitations": [
    "Results are estimates before tax, fees, and inflation unless an input explicitly covers them.",
    "Rates are treated as fixed for the whole period — variable-rate products will drift from this projection.",
    "This is educational maths, not financial advice. Check anything contractual with the lender or your accountant."
  ],
  "faq": [
    {
      "q": "Are galas worth it?",
      "a": "Rarely on pure ROI, often on relationship value. Judge an event by how many new major-gift prospects it identifies, then track whether those prospects actually convert within eighteen months."
    },
    {
      "q": "What is a good cost per dollar raised?",
      "a": "Roughly $0.05–$0.10 for major gifts, $0.20 for direct mail renewal, and $0.50 for special events. Anything above $0.60 needs a strategic justification beyond revenue."
    }
  ],
  "related": [
    "https://www.revenuelab.fyi/toolbox/fundraising-goal",
    "https://www.revenuelab.fyi/toolbox/nonprofit-overhead-ratio"
  ],
  "license": "CC-BY-4.0",
  "citation": "RevenueLab — Fundraising Event ROI Calculator (https://www.revenuelab.fyi/toolbox/fundraising-event-roi)"
}