Sopact is a technology based social enterprise committed to helping organizations measure impact by directly involving their stakeholders.
Copyright 2015-2026 © sopact. All rights reserved.
an SROI ratio and a cost-per-outcome computed live over the stores you already built — every line sourced, measured value kept visibly separate from benchmarked, attribution discounted, and the number recomputing as records land.
For: program leads, evaluators, and executive directors who have to put a return-on-investment number in front of a board or a funder — and defend it line by line.
Why: the usual SROI is a consultant spreadsheet — stale the day it lands, built on proxies nobody can source, with observed value and borrowed value blended into one figure a skeptic discounts on sight.
Outcome: an SROI ratio and a cost-per-outcome computed live over the stores you already built — every line sourced, measured value kept visibly separate from benchmarked, attribution discounted, and the number recomputing as records land.
This is Chapter 7 of the Case Intelligence series — the value layer. In the previous chapter you turned weekly mentor notes into an early-warning system, closing the evidence-collection arc: Chapters 3 through 6 built the intake baseline, the mid-program check, the exit wave, and the notes in between. This chapter is where that evidence becomes the two numbers a board actually asks for. For the running example — RiseWorks Foundation / Pathways 2027 (Train → Match → Place → Earn) — those numbers are SROI ≈ 2.44:1 and cost-per-outcome ≈ $20,076, computed over the funnel this series follows end to end: 80 enrolled → 62 completed → 58 credentialed → 108 matches (20 strong / 51 partial / 37 not-qualified) → 29 placed. The measured backbone under both is the wage pair the earlier chapters set up: median $9.96 → $25.11/hr from intake baseline to six-month follow-up.
As in every chapter, the steps are tagged [DIY] or [SENSE], and the line between them is drawn honestly. Building the value map and choosing defensible proxies is thinking work — you can do it in any AI chat window this week, and the first two steps hand you the prompts. Computing the ratio is different: a standalone prompt cannot compute over records it never receives, cannot join a wage in one store to a counterfactual answer in another, and cannot recompute anything when next month’s follow-up wave lands. The last two steps show what Sopact Sense produces over the joined stores — a per-record value ledger assembled on arrival, and a ratio that moves with the data.
SROI is one division: social value created ÷ investment. A ratio of 2.44:1 says every dollar invested produced about $2.44 of social value. The arithmetic has never been the problem. The problem is where the numbers come from — and in the standard process, they come from a one-off consulting engagement: someone exports your data, builds a spreadsheet of financial proxies, applies a page of assumptions, and hands back a deck. Three things go wrong, every time:
It is stale on delivery. The model reflects the cohort as of the export date. Six months later, more participants have hit their follow-up wave and more placements have cleared retention — the number is wrong, and nobody re-runs the spreadsheet, because re-running it costs another engagement.
The proxies are unsourced. “We valued improved wellbeing at $3,000 per participant.” Based on what? A proxy line that cannot point to a named source is an invitation to discount the whole ratio, and a skeptical funder accepts the invitation.
Measured and benchmarked value are blended. A wage gain you actually observed sits in the same total as a national-average “avoided cost” you looked up. Merged into one figure, the reader cannot tell what you proved from what you borrowed — so they trust neither.
The deeper cause is upstream of the spreadsheet. Traditional case-management systems — the Apricot-and-ETO category — hold each wave separately: intake in one module, the follow-up in a survey tool, placements in a tracker. Nothing joins, so someone must export and hand-assemble before any value math can start, and that export is why the number is always a snapshot. Sopact Sense removes the export: RiseWorks runs eight stores joined by reference keys — email, employer_name, requisition_id — so the intake wage and the follow-up wage are already the same person’s pair, and the counterfactual answer already sits on the exit record. Value lines are computed on arrival as records land, the Sopact Assistant computes the ratio over the stores whenever you ask, and when the next wave arrives, the ratio recomputes. Nobody rebuilds anything.
Before any prompt, fix the rules that make the number defensible. RiseWorks runs three:
Every line names a source, or it is dropped. “Measured from my own stores” is a source. “The state public-assistance schedule” is a source. “It felt right” is not, and the line goes.
Measured value never blends with benchmarked value. A MEASURED line is one you observed in your own data — both numbers, same scale, same person, joined by ID. A BENCHMARKED line borrows an external figure. Both are legitimate; a mixture of the two presented as one number is not. Report the two shares side by side, always.
The ratio is post-discount. Some of the change you observe would have happened anyway — deadweight. The exit counterfactual question from Chapter 5 exists exactly for this: each participant’s value is multiplied by their own attribution factor before anything is summed. 2.44:1 is the number after that discount, not before.
One definition does quiet work throughout: the primary outcome unit is a durable placement — matched, placed, retained 90 days, in-field, at a living wage. Cost-per-outcome divides total program cost by durable placements, not by “people served.” That is why ≈ $20,076 is a defensible figure and “cost per participant” is a flattering one: the denominator is the outcome the theory of change promised, not the headcount that walked in.
What you do. For each outcome in your theory of change, write one line: outcome → financial proxy → source, and mark the line MEASURED or BENCHMARKED. The proxy is the dollar figure that stands in for the outcome; the source is where that figure comes from. Feed your outcomes to any capable AI with Prompt 1 and it drafts the map — but you defend every line, because you will be the one saying the source out loud in a board meeting.
What you get. A value map — the complete list of lines that will sum to your social value, each with a proxy you can name and a source you can cite. Any line marked UNSOURCED gets fixed or cut before a ratio is computed.
Why it matters. The value map is the audit trail. When a funder asks “where did 2.44 come from?”, you point at the map, line by line. It is also where restraint pays: a map of three defensible lines beats a map of nine speculative ones, because one indefensible line taints the eight next to it.
Real example — RiseWorks. The map has exactly three lines:
The largest line is the measured one, and that is by design. The wage gain comes straight from the pair the Chapter 3 baseline set up: baseline_hourly_wage at intake, the same question re-asked at six-month follow-up, joined on the participant’s email. Nobody looked that number up. And notice what is not on the map: no “improved wellbeing,” no line RiseWorks cannot source. Those outcomes are real; they are reported as measured confidence change (4.3 → 7.1 → 7.4), not converted into dollars nobody can defend.
Prompt 1: SROI Value Map Builder
PROMPT 1 — SROI VALUE MAP BUILDER [DIY]
Use in: any capable AI (Claude, ChatGPT) while you design your value model.
Purpose: turn your outcomes into a sourced value map — one line per outcome,
each line MEASURED, BENCHMARKED, or flagged UNSOURCED.
------------------------------------------------------------
You are an SROI analyst building a value map. Your output must be
deterministic: the same input must give the same output every run.
TASK
For each outcome I list, produce exactly one value-map line:
outcome -> financial proxy -> source -> type.
RULES (apply mechanically, no exceptions)
1. ONE proxy per outcome. If two candidate proxies exist, output the more
conservative one and note the rejected one in the Notes column.
2. Type is exactly one of three fixed labels:
- MEASURED — only when BOTH numbers behind the proxy exist in my own
data inventory below, on the same scale, joinable per person by a
persistent ID. If either number is missing from my inventory, the
line is NOT MEASURED.
- BENCHMARKED — only when you can name a specific external source type
I could cite (e.g. "state public-assistance schedule", "published
effective-tax-rate estimate"). Generic phrases ("studies show") do
not qualify.
- UNSOURCED — when neither condition above is met. Never silently
upgrade an UNSOURCED line; flag it for me to fix or cut.
3. If a proxy would double-count value already captured by another line
(e.g. wage gain re-counted inside a "quality of life" dollar figure),
mark the line DOUBLE-COUNT in Notes and recommend dropping it.
4. Conditional benchmarks must state their condition in the proxy text
(e.g. "avoided assistance — applies only if assistance received at
baseline AND employed at follow-up").
5. Do not invent sources, dollar figures, or outcomes I did not provide.
6. Keep proxies conservative: prefer under-claiming to over-claiming.
OUTPUT FORMAT
A table with exactly these columns:
Outcome | Financial proxy | Source | Type (MEASURED / BENCHMARKED / UNSOURCED) | Notes
Then one closing line: "UNSOURCED lines to fix or cut: N".
------------------------------------------------------------
MY OUTCOMES (from my theory of change):
<<< paste your outcomes here >>>
MY DATA INVENTORY (fields I actually collect, with scales and waves):
<<< paste your field list here — e.g. baseline_hourly_wage ($/hr, intake),
followup_hourly_wage ($/hr, six-month follow-up), joined by email >>>
------------------------------------------------------------
WORKED REFERENCE (RiseWorks Foundation / Pathways 2027):
Living-wage employment | wage gain ($25.11 − $9.96) × annual hours | own stores: intake + six-month follow-up, joined on email | MEASURED
Reduced public dependency | avoided assistance ≈ $4,800/yr, only if received at intake AND now employed | public-assistance schedule | BENCHMARKED
Added tax contribution | ≈ 12% of wage gain | effective-rate estimate | BENCHMARKED
What you do. Pressure-test the map. For any outcome with competing proxies, pick the most conservative, best-sourced one — the figure least likely to be challenged. Grade each line: HIGH if measured from your own stores, MEDIUM if it rests on a named external benchmark, LOW if the benchmark is generic — and treat LOW as a candidate for deletion. Then fix the attribution scale you will apply per participant, from the exit counterfactual: Entirely because of the program 1.0 · Mostly 0.8 · Somewhat 0.5 · Slightly 0.25 · Not at all 0.0.
What you get. A final model definition: one proxy per outcome with a one-sentence rationale, a confidence grade per line, and a fixed factor scale — decided before any computation runs.
Why it matters. Deadweight is where inflated SROI numbers hide. A participant whose wage tripled but who says the program made no difference contributes zero attributable value — no matter how good the wage pair looks. Applying that discount per person, from each person’s own answer, is what separates an honest ratio from a flattering one. And conservatism compounds trust: RiseWorks’ tax line uses an effective-rate estimate of about 12% rather than a marginal rate that would look better, and its avoided-assistance line credits ≈ $4,800/yr only where assistance was actually received at intake and the person is now employed — never as a flat per-head bonus.
Real example — RiseWorks. Because RiseWorks made the placements itself, placed participants skew high on attribution — most credit the program “mostly” or “entirely.” The discount is applied anyway, participant by participant, and the published ratio is the post-discount one. When a reviewer asks “did you account for people who would have found work anyway?”, the answer is yes, mechanically, from each participant’s own exit answer — not a hand-waved 10% haircut applied at the end.
Prompt 2: Conservative Proxy and Discount Picker
PROMPT 2 — CONSERVATIVE PROXY AND DISCOUNT PICKER [DIY]
Use in: any capable AI (Claude, ChatGPT). You make the final call; this
pressure-tests the map and fixes the attribution scale before anything
is computed.
Purpose: one defensible proxy per outcome, a confidence grade per line,
and a fixed attribution-factor scale.
------------------------------------------------------------
You are a skeptical SROI reviewer. Your output must be deterministic:
the same input must give the same output every run.
TASK
Review the value map I paste below and return the final model definition.
RULES (apply mechanically, no exceptions)
1. For each outcome with competing proxies, keep the more conservative,
better-sourced one. State the rationale in ONE sentence.
2. Grade every line with exactly one of three fixed confidence labels:
- HIGH — MEASURED from my own stores (both numbers, same scale,
joined per person by a persistent ID).
- MEDIUM — BENCHMARKED against a named, citable external source.
- LOW — benchmark is generic, unnamed, or not specific to my
population. Recommendation for every LOW line: cut it, and report
that outcome in its own units instead of dollars.
3. Never upgrade a grade because the line is large. Size is not evidence.
4. Confirm every conditional benchmark states its condition; if one does
not, write the missing condition.
5. Output the attribution-factor scale exactly as given below — do not
modify the factors or add categories:
Entirely because of the program = 1.0
Mostly = 0.8
Somewhat = 0.5
Slightly = 0.25
Not at all = 0.0
Rule: each participant's total value line is multiplied by their OWN
factor (from the exit counterfactual answer) before any summing. The
published ratio is the post-discount number.
6. Do not invent proxies, sources, or outcomes not present in my map.
OUTPUT FORMAT
Table: Outcome | Chosen proxy | Rationale (1 sentence) | Confidence (HIGH / MEDIUM / LOW) | Action (KEEP / FIX CONDITION / CUT)
Then the attribution scale block, verbatim.
Then one closing line: "Lines cut for LOW confidence: N".
------------------------------------------------------------
MY VALUE MAP (output of Prompt 1):
<<< paste your Prompt 1 output here >>>
MY EXIT COUNTERFACTUAL QUESTION (wording + answer options):
<<< paste it here >>>
------------------------------------------------------------
WORKED REFERENCE (RiseWorks): the tax line uses an effective-rate
estimate (~12%) rather than a marginal rate; the avoided-assistance line
(≈ $4,800/yr) is conditional on assistance received at intake AND
employment at follow-up; the wage-gain line is HIGH confidence because
$9.96 -> $25.11 is measured per person, joined on email. The published
2.44:1 is post-discount.
Before the product steps, look at what the computation reads. Here is RW2-004, Javier Brooks, 23, IT & Cybersecurity track, Birmingham cohort 2024-Q3 — the participant whose intake record anchored Chapter 3 — as his fields sit in the joined stores today:
email — javier.brooks86@yahoo.com (the persistent ID every store joins on)
Intake (Chapter 3): baseline_hourly_wage — $12.69 (last job) · employment_status_at_intake — unemployed · receives_public_assistance — No · has_dependents — Yes · intake_goal_openended — “support my kids without working two jobs”
Exit (Chapter 5): counterfactual question — “How much of this change would have happened without the program?” — answered on the five-point scale that maps to the attribution factors
Placements: placement status · retained-90-days flag — the fields that decide whether his outcome counts as durable
Six-month follow-up: hourly wage, re-asked on the identical $/hr scale as intake
Every line of the value map has a home in these fields. The wage-gain line reads intake and follow-up. The avoided-assistance line reads receives_public_assistance — and for Javier it reads No, so that benchmarked line will contribute nothing for him, ever. That is the conditional benchmark behaving correctly: borrowed value accrues only where its condition is met in the data.
From here on, this is product output, not a prompt you run. A chat prompt can score the map you paste into it; it cannot watch a follow-up survey land on a Tuesday morning and compute that participant’s wage-gain line in the moment. In Sense, an Intelligent Cell sits on each field the value model reads — the follow-up wage, the exit counterfactual, the assistance flag — and computes its value line the moment that record arrives. An Intelligent Row assembles the lines into a per-participant value ledger. Here is Javier’s, as it stands mid-program:
INTELLIGENT ROW — Value Ledger · RW2-004 · Javier Brooks · IT & Cybersecurity · 2024-Q3 Birmingham
Read what the OPEN rows are doing: they are the honesty of the method made visible. Javier’s ledger is not padded with estimates to make the cohort total look finished — his lines complete when his records do. Across the cohort, ledgers close as waves land, which is why the pool-level pair — median $9.96 at intake to $25.11 at follow-up — is a set of reconciled per-person pairs, not two disconnected survey averages. And the DOES-NOT-APPLY row is the difference between a conditional benchmark and a flat per-head credit, auditable on every record.
This is also the adaptive loop applied to money. If RiseWorks revises a proxy — say the assistance schedule updates — every ledger in the store re-computes identically, first participant and last. A consultant spreadsheet revised mid-year applies the new assumption only to the rows someone remembers to touch.
Prompt 3 — Value Ledger on Arrival
PROMPT 3 — VALUE LEDGER ON ARRIVAL [SENSE]
This is product configuration — it runs on arrival in Sopact Sense, not
in a chat window. A standalone prompt cannot do this: it never receives
the records, cannot join a wage in one store to a counterfactual in
another, and cannot recompute when the next wave lands.
WHERE IT SITS
Three Intelligent Cells, one per field the value model reads, plus one
Intelligent Row that assembles the ledger.
CELL 1 — on `followup_hourly_wage` (Six-Month Follow-up store)
Instruction: "When this field arrives, compute the MEASURED wage-gain
line for this participant: (follow-up wage − baseline_hourly_wage from
the Intake store, joined on email) × annual hours. Write the line value
and the two source fields to the ledger. If the baseline is missing,
write LINE BLOCKED — NO BASELINE instead of a value."
CELL 2 — on the exit counterfactual field (Exit/Completion store)
Instruction: "Map the answer to its attribution factor exactly:
Entirely 1.0 / Mostly 0.8 / Somewhat 0.5 / Slightly 0.25 / Not at all
0.0. Write the factor to the ledger. Never estimate a factor for a
missing answer — write OPEN."
CELL 3 — conditional benchmark (Intake + Six-Month Follow-up stores)
Instruction: "Apply the avoided-assistance line (≈ $4,800/yr,
BENCHMARKED) only if receives_public_assistance = Yes at intake AND
employment = employed at follow-up. If the condition fails, write
DOES NOT APPLY ($0). Apply the tax line (≈ 12% of wage gain,
BENCHMARKED) only after the wage-gain line has a value."
ROW — VALUE LEDGER (assembly spec)
Assemble per participant, joined on email:
1. Each value line with its Type (MEASURED / BENCHMARKED), the fields
it read, and its status (value / OPEN / DOES NOT APPLY / BLOCKED).
2. The attribution factor (or OPEN).
3. Ledger status: CLOSED when all lines and the factor are resolved;
otherwise OPEN.
Measured and benchmarked lines are never summed into one figure at the
ledger level — they stay in separate columns all the way up.
SAMPLE RETURN (real record — RW2-004 · Javier Brooks · IT & Cyber,
2024-Q3 Birmingham, joined on javier.brooks86@yahoo.com):
Wage gain MEASURED intake $12.69/hr -> follow-up: OPEN
(completes when his follow-up lands)
Avoided assistance BENCHMARKED receives_public_assistance = No at
intake -> DOES NOT APPLY ($0)
Tax contribution BENCHMARKED follows the wage line -> OPEN
Attribution factor — exit counterfactual -> OPEN
LEDGER STATUS: OPEN — recomputes the cohort ratio when it closes.
WHY ON ARRIVAL MATTERS
Ledgers close as records land, so the pool-level pair (median $9.96 at
intake -> $25.11 at follow-up) is a set of reconciled per-person pairs,
not two disconnected survey averages. If a proxy is revised, every
ledger in the store recomputes identically — first record and last.
The second thing no standalone prompt can do: divide a numerator spread across five stores by a denominator in a sixth, for 80 people at once, today and again next month. This is the Sopact Assistant (with the Claude MCP connection) working over the stores directly. Asked for the return picture, it returns four things:
The ratio, split before it is combined. Total attribution-adjusted social value over total investment — with the measured share and the benchmarked share reported separately, then combined: ≈ 2.44:1. A funder sees exactly how much of the ratio rests on the observed wage pair and how much on borrowed benchmarks, which is precisely what a blended number hides. The measured wage-gain line is the largest single contributor — cut the benchmarked lines entirely and there is still a return story built on observation.
Cost-per-outcome, with the honest denominator. Total program cost divided by durable placements comes to ≈ $20,076. Not cost per enrollee, not cost per completer: cost per instance of the outcome the theory of change promised.
The funnel, with the drop-off priced in. The Assistant shows where value concentrates and where it leaks:
The 29 credentialed-but-unplaced candidates in that gap between 58 and 29 are not an SROI footnote — they are the demand-side problem the next chapter takes up.
The audit, run against the model itself. Before publishing, the Assistant checks the model the way a skeptical reviewer would: any line with no named source, any value counted twice (a wage gain folded again into a “quality of life” line), any benchmarked line presented as measured, any line summed without its attribution discount. A model with a failing line does not ship.
And then it does the thing no deck can: it stays current. When the next follow-up wave lands, open ledgers close, the ratio recomputes, and the number in front of your board is the number your data supports today — not the number it supported at export time last spring.
Run it yourself: Prompt 4 — Live SROI over the Store
PROMPT 4 — LIVE SROI OVER THE STORE [SENSE]
Run this in the Sopact Sense Assistant over your store. It works because
the Assistant (with the Claude MCP connection) reads the joined stores
directly — intake, exit, placements, six-month follow-up — so the
numerator and denominator come from reconciled records, not from an
export.
ASSISTANT PROMPT A — the ratio and the funnel
------------------------------------------------------------
Across the cohort, compute the live SROI:
1. Per participant, sum the value lines from the value ledger — keeping
MEASURED and BENCHMARKED in separate columns — then multiply by that
participant's attribution factor (from the exit counterfactual:
Entirely 1.0 / Mostly 0.8 / Somewhat 0.5 / Slightly 0.25 /
Not at all 0.0).
2. SROI ratio = total attribution-adjusted social value ÷ total
investment (program cost fields, Exit/Completion store). Report the
MEASURED share and the BENCHMARKED share separately, then combined.
3. Cost-per-outcome = total program cost ÷ durable placements, where a
durable placement = matched + placed + retained 90 days, in-field,
at a living wage. Never divide by people served.
4. Show the funnel with the value consequence of each drop-off.
5. Note which ledgers are still OPEN and what closing them would change.
------------------------------------------------------------
ASSISTANT PROMPT B — the model audit
------------------------------------------------------------
Audit the SROI model before I publish it. Flag:
1. Any proxy line with no named source (UNSOURCED).
2. Any value counted twice across lines.
3. Any BENCHMARKED line presented as if it were MEASURED.
4. Any participant value summed without its attribution discount.
For each flag: quote the line, name the problem, state the fix.
Verdict: PASS only if zero flags; otherwise NEEDS WORK with the list.
------------------------------------------------------------
WHAT IT RETURNS (RiseWorks Foundation / Pathways 2027, real numbers):
SROI ≈ 2.44 : 1 (post-discount; measured share and
benchmarked share reported separately, then
combined — the measured wage-gain line is the
largest single contributor)
Cost-per-outcome ≈ $20,076 per durable placement
Measured backbone median wage $9.96 -> $25.11/hr (intake ->
six-month follow-up, joined per person on email)
Funnel 80 enrolled -> 62 completed -> 58 credentialed ->
108 match evaluations (20 strong / 51 partial /
37 not-qualified) -> 29 placed
Drop-off evidence 82% of completers employed at follow-up vs 45% of
non-completers
And it recomputes: when the next follow-up wave lands, open ledgers
close and the ratio updates — nobody rebuilds a spreadsheet.
WHY A CHAT PROMPT CAN'T DO THIS
A standalone prompt sees only what you paste. It has no store, no other
records, no other waves — so it cannot join 80 wage pairs on email,
cannot read 80 counterfactual answers, and cannot recompute anything
next month. The Assistant works over the stores, so the number in front
of your board is the number your data supports today.
Blending measured and benchmarked value into one figure. The moment an observed wage gain and a looked-up avoided cost merge into a single number, the reader can no longer tell proof from borrowing — and discounts both. Keep the two columns separate all the way into the report.
Publishing the gross ratio. An SROI with no deadweight discount claims every observed change as yours. Multiply each participant’s value by their own attribution factor and publish the post-discount number. It will be smaller. It will also be believed.
Dividing cost by people served. Cost per enrollee is a flattering denominator because enrollment is the one number a program fully controls. Divide by the durable outcome instead, and accept the larger, honest figure.
Keeping an unsourced line because it is big. The $3,000-wellbeing line adds to the numerator and subtracts from the credibility of every line around it. If you cannot name the source in a meeting, cut the line and report that outcome in its own units.
Treating SROI as an annual event. A ratio computed once a year from a hand-built export is stale for eleven months and un-auditable for twelve. If the waves are joined by a persistent ID, the ratio is a query, not a project — run it whenever a funder asks.
A value map where every line has a proxy, a named source, and a MEASURED or BENCHMARKED label. A fixed attribution scale applied per participant from their own exit answer. A per-record value ledger that assembles on arrival, shows its open lines honestly, and applies conditional benchmarks only where the condition is met. And over the joined stores, the two numbers that hold up in the room: SROI ≈ 2.44:1, measured share and benchmarked share visible, and cost-per-outcome ≈ $20,076 against durable placements — both recomputing as records land.
Because the value map is an audit trail, every dollar of claimed value traces to a source someone can check. Because measured and benchmarked value never blend, the reader always knows what was observed — the $9.96 → $25.11 wage pair, joined per person — versus what was borrowed. Because attribution is discounted from each participant’s own counterfactual, deadweight is removed mechanically, not rhetorically. And because the computation runs over stores joined by a persistent ID, the ratio moves with the data instead of decaying in a deck. The skeptic’s one-liner: every line has a source, measured never mixes with borrowed, and the number recomputes itself when the data changes.
Take your single most important outcome and write one line: outcome → financial proxy → source, marked MEASURED or BENCHMARKED. If measured, name the two fields and the ID that joins them; if benchmarked, name the document the figure comes from. One honest line is the seed of an SROI a funder trusts — and if you cannot write the line, you have found the gap a year before the report would have.
A screen-by-screen walkthrough — building the RiseWorks value map, watching a follow-up record close a value ledger on arrival, and asking the Assistant for the live 2.44:1 with its split — is in production. Check back on the Academy.
Program leads who have been quoted an SROI engagement and wondered what happens to the number in month seven. Evaluators who inherited a ratio they cannot trace. Executive directors who need one defensible return number for a board that includes at least one skeptic. If your current SROI lives in a slide and not in your data, this chapter is the repair.
Compute your live SROI in Sopact Sense — sopact.com/academy.
Next in the series: How to Turn a Job Description into a Requirements Checklist — the series crosses to the demand side, where the 29 credentialed-but-unplaced candidates meet the employer requisitions that explain why.
Open Sopact Sense, paste your program description, and put it to work.
Try in Sopact