River
Y CombinatorBacked by Y Combinator
FREE TEMPLATE

Nonprofit Logic Model Template

Every box in a logic model commits you to a number. This one scores each indicator on whether the data behind it exists today.

Free download  ·  No account needed

A blank logic model template invites you to fill in twenty boxes with plausible language, and every box you fill is a commitment to produce a number. Nobody notices at the time. It surfaces eighteen months later as a report with a blank in it, because the outcome indicator that read so well in the proposal needs a six-month follow-up the organisation has never done. The arrows were never the problem. The data behind the right-hand columns was.

So this pack scores before it draws. Every element carries exactly one indicator, and every indicator carries one of four statuses. Live means a field exists and is populated for the whole period and the whole caseload. Partial means it covers part of one of those. Buildable means a form change or a join fixes it, with no new instrument and no external party. None means primary collection nobody can currently run. The field or the absence behind each status gets named, because recorded in staff notes is an absence rather than a partial.

In the worked example a 23-element chain scores 9 live, which is 39%. Read left to right it collapses: 8 of 14 elements from inputs through outputs, and 1 of 9 outcomes. 57% down to 11%. Six elements need collection nobody can run, and two of those six sit in signed agreements already, which is the kind of thing worth knowing before the reporting deadline rather than at it.

The columns where a logic model stops being verifiable

Every indicator scored, the chain as a graph with its assumptions, and what each measurement gap costs to close.

Data Source Register

Illustrative, for a fictional community health nonprofit called Cedar Line Community Health. One programme, 23 chain elements, one indicator each. Status is scored against the fields the organisation holds today, not against what it intends to collect.

IDIndicatorStatusField or absence behind it
A-1Sessions delivered per cohortliveSession attendance record
O-1Distinct individuals with a first sessionliveAttendance record
O-2Individuals present at all six sessionsliveAttendance record
A-5Follow-up calls attempted and reachedbuildableNothing. Staff record these in notes
O-3Monitors issued to enrolled participantsbuildablePaper supply log, not joined to enrolment
S-1Score change on the course's knowledge checkpartialPre and post check on paper, entered for some cohorts
S-2Self-reported monitoring at session sixpartialSession six form, added last quarter
S-3Individuals with a named primary care clinicianliveEncounter record
O-5Referrals with a confirmed first appointmentnoneThe counselling provider does not report back
S-4Validated anxiety measure at intake and exitnoneNothing
M-1Change in the clinical measure at six monthsnoneNo six-month follow-up field, and the lab result is only here when the test was ordered here
M-3Emergency visits per participant per yearnoneHospital data is not shared with us
L-1Population complication rate against a comparisonnoneNeeds registry or claims data plus a comparison group
L-2Self-management measure at 24 monthsnoneNo contact route past six months
ColumnElementslivepartialbuildablenoneMeasurable today
Input4220050%
Activity5302060%
Output5301160%
Short-term outcome4120125%
Medium-term outcome301020%
Long-term outcome200020%
All23953639%

The collapse is the finding, and it is structural rather than sloppy. Activities and outputs happen inside systems the organisation runs, so they get recorded. Outcomes happen to people after they leave, and the further right you go the further outside the organisation's reach the data sits. A long-term population outcome needs a comparison group by definition, which makes it a study rather than a field. Inputs through outputs score 8 of 14 live, 57%. Outcomes score 1 of 9, 11%. Nearly every programme has this shape and almost no submitted logic model says so.

Input to Outcome Chain

The model as a graph rather than six columns of boxes. Each element names the element it leads to, carries one target, and carries the assumption that has to hold for the link to work.

IDElementLeads toTargetAssumption that has to hold
A-1Six-session course deliveredO-1, O-26 per cohort, 5 cohorts a yearParticipants can attend six consecutive weeks. Attrition is the main risk
A-5Follow-up calls between sessionsO-25 calls per participantParticipants answer an unknown number. Reach rate is not recorded
O-1Participants enrolledS-1331 a year
O-2Participants completing all sixS-1, S-2214, so 65%Completion is the mechanism, not attendance. Untested
O-5Nutrition referrals taken upS-160% of referralsThe counselling provider has capacity to take referrals
S-1Can interpret their own readingsS-2+30% on the checkKnowledge precedes behaviour. Standard, weakly evidenced here
S-2Monitoring at least weeklyM-170%Self-report is honest and the recall period is short enough
M-1Clinical measure improves at six monthsL-155% of completersSix months is long enough for the measure to move
M-2Attending routine primary careM-375%Participants use our clinic rather than another
L-1Complication rates fall in the populationnothingNo target. AspirationThe served population is comparable to something. No comparison group exists
L-2Sustained self-management at two yearsnothingNo target. AspirationNothing upstream reaches this element at all

Two structural facts fall out of writing the chain as a graph. L-2 is reached by nothing, because there is no contact route past six months, so an element the health trust's agreement asks about is not connected to the programme at all. And O-2 is doing two jobs: it is an output in its own right and it is the denominator of every short-term outcome, because those are defined against completers rather than enrollees. 214 of 331 complete, so 117 people who enrolled are outside the measurement of everything to the right, and whether the two-session group behaves like the six-session group is the cheapest test of the model's weakest link. The session six form makes that comparison possible from the third cohort onward and nobody has run it.

Measurement Gap Costing

Every indicator below live, grouped by the work that closes it rather than by element, with staff hours and cash kept in separate columns. Staff cost at a blended internal rate of $42 an hour.

GapElementsWhat closes itHoursCashAlready promised
M-11A six-month follow-up field plus a recall call at month six34$0A-03 and A-06 both require it
M-21A data-sharing note with the two clinics ordering labs20$0A-02 requires it
S-1, S-22Enter the paper pre and post checks for every cohort14$0A-03 requires S-1
O-51The counselling provider confirming first appointments12$0Nobody
I-3, I-42Use the booking sheet and volunteer log for the whole period8$0Feeds match documentation
A-3, A-5, O-33Two fields on the session form, supply log digitised6$0A-04 requires O-3
S-41License and administer a validated anxiety measure30$4,800Nobody
M-31Buy or negotiate hospital utilisation data40$22,000Nobody
L-21Two-year follow-up contact route and retention effort120$18,000A-06 requires it
L-11Registry or claims access, comparison group, evaluator0$85,000Nobody
No cash needed10Six gaps, ten elements94$039% to 83% measurable
Cash needed4Four gaps, four elements190$129,800Board decision

The no-cash tier is the whole argument. 94 staff hours, $3,948 of time at the blended rate, and measurability goes from 9 of 23 elements to 19 of 23. Do M-1 first even though it is the largest single item at 34 hours, because two executed agreements require the six-month clinical measure and nothing produces it, which makes it the only line here that is currently a promise the organisation cannot keep. The cash tier totals $137,780 including the time, and that figure belongs in front of a board before it appears implicitly in a logic model. Two of those four are aspiration: L-1 at $85,000 is a study rather than a measurement plan, and L-2 needs either funding or a conversation with the health trust about the indicator it already agreed to.

What is in the pack

01

Data Source Register

One row per indicator with a status of live, partial, buildable or none, and the field or the absence behind it named.

02

Measurability computed per column

The rate falls as you move right along the chain, and stating that fall as a number is what makes it a constraint rather than a feeling.

03

Input to Outcome Chain as a graph

Every element names the element it leads to, so an outcome nothing upstream reaches shows up as the wish it is.

04

One indicator per element, enforced

An element with three indicators is three elements or one vague one, and forcing the choice is where the thinking happens.

05

Measurement Gap Costing

Each gap priced in staff hours and cash separately, so the tier that costs no money can be approved this week.

06

The cross-check against signed agreements

Indicators current awards already require, scored on the same register, which is the ten-minute job that pays for the exercise.

How it works

  1. 1

    Send the programme as it runs

    Not the description in the last proposal. What happens, to whom, in what order, including the parts that go wrong and the people who leave.

  2. 2

    Send your field list

    A form, an export's headers, a screenshot of the custom fields. Without it every indicator gets marked unscored rather than guessed at. What the list is missing becomes the input to a collection designed backwards from your agreements.

  3. 3

    Build the chain, then score it

    One indicator per element and each element naming the next. Scoring is a separate pass, because mixing the two produces a register full of optimism.

  4. 4

    Price the gaps and cross-check

    Hours and cash in separate columns, then the indicators your executed agreements already require checked against the same statuses.

Frequently asked questions

Why score the indicators rather than just write the model?

Because a logic model is read as a commitment. A funder who receives one naming an outcome indicator can ask for that indicator later, and the organisation has no way to say no. Writing a plausible sentence into a box costs nothing now and a lot in month eighteen.

Is 39% measurable a bad score?

It is a normal one. What matters is the shape: 8 of 14 elements from inputs through outputs are live and 1 of 9 outcomes is. Every programme has that collapse because outcomes happen to people after they leave, outside any system the organisation runs. The same collapse caps the impact report, because a rate nobody can compute is a rate nobody can publish.

What do I put in a column I cannot measure?

The element, its indicator, and the note that nothing produces it today. An empty long-term outcome row with the reason stated is a better artifact than two confident sentences. Funders read many logic models and the ones that name their own limits read as more credible.

Does a federal award actually require this?

The award is where it gets set. Federal agencies communicate the expected outcomes, indicators, targets, baseline data or data collections the recipient is responsible for measuring, so an indicator you accepted at award is one you will be asked for.

What happens if a promised indicator has no data behind it?

It becomes a reporting problem with a deadline. Reporting requirements have to indicate a standard against which performance can be measured, so the gap surfaces as a row with no filter behind it in the indicator crosswalk.

Can I use a proxy indicator?

Yes, if it is labelled as one, the real indicator stays on the register scored none, and the narrative says what the proxy fails to capture. What the pack refuses is approximating an outcome figure, because a number no participant record supports is not a measurement gap.

How does this connect to a proposal?

The model goes in the proposal, so the scoring should happen before the narrative is written. A funder told at proposal stage that the six-month measure needs a follow-up route the grant could pay for is a conversation rather than a finding.

Find out what your model is promising

Send the programme and the fields you record. The first thing back is the measurability rate per column and the list of indicators nothing produces.

Score my model