play icon for videos
← Academy
SOPACT ACADEMY · SURVEY INTELLIGENCE · ANALYZE

How to Analyze Open-Ended Survey Responses

Good thematic analysis reconciles every count back to N — most don't. Here is the prompt that themes open-text, counts each theme, holds single mentions, and grades the result.

<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <style> @keyframes pulseDot{0%,100%{opacity:1}50%{opacity:.35}} *{box-sizing:border-box} body{margin:0;font-family:'Hanken Grotesk',-apple-system,BlinkMacSystemFont,sans-serif;background:#EEF2F9;padding:26px;display:flex;justify-content:center} .card{width:600px;max-width:100%;background:#FFFFFF;border:1px solid #E3E9F4;border-radius:20px;box-shadow:0 26px 64px -32px rgba(15,30,70,.34),0 2px 4px rgba(15,30,70,.05);overflow:hidden} .hdr{display:flex;align-items:center;gap:11px;padding:16px 20px;border-bottom:1px solid #EEF1F7;background:#F5F8FE} .hdr .ic{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border:2px solid #155DFC;border-radius:50%;color:#155DFC;font-size:15px;font-weight:800;flex-shrink:0} .hdr .t{min-width:0} .hdr .t .n{font-weight:800;font-size:14.5px;color:#0F172A;letter-spacing:-.2px} .hdr .t .s{font-size:12px;color:#64748B} .hdr .pill{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:11.5px;font-weight:700;color:#155DFC;background:#E6EEFF;padding:5px 10px;border-radius:20px;white-space:nowrap} .hdr .pill .d{width:6px;height:6px;border-radius:50%;background:#155DFC;animation:pulseDot 2s infinite} .tabs{display:flex;gap:0;padding:12px 16px 0;background:#F5F8FE} .tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;cursor:pointer;font-family:inherit;font-size:11.5px;font-weight:700;color:#64748B;background:transparent;border:none;border-bottom:2px solid transparent;padding:8px 4px 10px} .tab.on{font-weight:800;color:#155DFC;border-bottom-color:#155DFC} .tab .num{display:inline-flex;width:20px;height:20px;align-items:center;justify-content:center;border-radius:50%;font-size:11px;font-weight:800;color:#64748B;background:#EEF1F7} .tab.on .num{color:#fff;background:#155DFC} .divider{height:1px;background:#EEF1F7} .body{padding:20px} .eyebrow{font-size:10.5px;font-weight:800;letter-spacing:1.2px;text-transform:uppercase;color:#155DFC;margin-bottom:5px} .eyebrow.g{color:#15884F} .headline{font-family:'Inter',Georgia,serif;font-size:18.5px;font-weight:600;line-height:1.25;color:#0F172A;margin-bottom:12px} .lede{font-size:12.5px;line-height:1.55;color:#475569;margin:0 0 14px} .rows{display:flex;flex-direction:column;gap:8px;margin-bottom:14px} .row{display:flex;align-items:center;gap:11px;background:#F5F8FE;border:1px solid #EEF1F7;border-radius:11px;padding:11px 13px} .row .emoji{font-size:17px} .row .rt{flex:1;min-width:0} .row .rt .n{font-size:13px;font-weight:700;color:#0F172A} .row .rt .s{font-size:12px;color:#64748B} .pillsm{font-size:11px;font-weight:800;color:#155DFC;background:#E6EEFF;padding:4px 9px;border-radius:6px;flex-shrink:0} .pillsm.gray{font-weight:700;color:#64748B;background:#EEF1F7} /* chain / timeline */ .chainwrap{position:relative;padding-left:26px} .chainline{position:absolute;left:8px;top:8px;bottom:8px;width:2px;background:#E3E9F4} .cnode{position:relative;margin-bottom:14px} .cdot{position:absolute;left:-26px;top:4px;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid #94A3B8} .clabel{font-size:9.5px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#64748B;margin-bottom:4px} .cbox{background:#F5F8FE;border:1px solid #EEF1F7;border-radius:11px;padding:10px 12px;font-size:12px;line-height:1.5;color:#334155} .cbox.graded{display:flex;align-items:flex-start;gap:9px;border-left-width:3px;border-left-style:solid} .cnote{margin:0 0 14px 4px;font-size:11px;line-height:1.5} .cnote .plus{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;background:#155DFC;color:#fff;border-radius:4px;font-size:10px;font-weight:800;flex-shrink:0;margin-right:6px} .csummary{display:flex;align-items:center;gap:12px;background:#0A1B3D;border-radius:13px;padding:11px 15px;margin-top:4px} .csummary .t{flex:1;font-size:11.5px;color:#CBD8F5} .csummary .t b{color:#F1F5FF} /* matrix */ .mxwrap{border:1px solid #EEF1F7;border-radius:12px;overflow:hidden;margin-bottom:10px} .mxhead{display:grid;grid-template-columns:118px 1fr 1fr;background:#F5F8FE;border-bottom:1px solid #EEF1F7} .mxhead div{font-size:9px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;color:#64748B;padding:7px 9px} .mxrow{display:grid;grid-template-columns:118px 1fr 1fr;border-bottom:1px solid #EEF1F7} .mxrow:last-child{border-bottom:none} .mxrow>div{padding:9px;font-size:11.5px;line-height:1.4;color:#334155;display:flex;align-items:center;flex-wrap:wrap;gap:5px} .mxrow .mxlabel{font-weight:700;color:#0F172A;background:#FAFBFE} .mxchip{font-size:9px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;padding:3px 6px;border-radius:5px;white-space:nowrap} .promptwrap{padding:0 20px 18px} .promptlbl{font-size:10px;font-weight:800;letter-spacing:1px;text-transform:uppercase;color:#94A3B8;margin-bottom:7px} .prompt{display:flex;align-items:flex-start;gap:9px;font-family:ui-monospace,'SF Mono',Menlo,monospace;font-size:11px;line-height:1.5;color:#1E293B;background:#F5F8FE;border:1px solid #EEF1F7;border-left:3px solid #155DFC;border-radius:9px;padding:11px 12px} .prompt .car{color:#155DFC;font-weight:800;flex-shrink:0} .flagrow{display:flex;align-items:flex-start;gap:10px;background:#F5F8FE;border:1px solid #EEF1F7;border-radius:11px;padding:10px 12px;border-left-width:3px;border-left-style:solid;margin-bottom:8px} .flagtag{font-size:9.5px;font-weight:800;letter-spacing:.4px;text-transform:uppercase;padding:4px 8px;border-radius:5px;white-space:nowrap;flex-shrink:0} .flagtxt{font-size:12px;line-height:1.45;color:#334155} .lp{display:flex;align-items:center;gap:12px;background:#0A1B3D;border-radius:13px;padding:14px 16px;margin-top:6px} .lp .ic{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;background:#14295C;border:1px solid #26407A;border-radius:9px;color:#7FA8FF;font-size:16px;flex-shrink:0} .lp .rt{flex:1;min-width:0} .lp .rt .n{font-size:13px;font-weight:800;color:#F1F5FF} .lp .rt .s{font-size:11.5px;color:#9DB2D9} .lp .open{font-size:11px;font-weight:800;color:#0A1B3D;background:#7FA8FF;padding:6px 11px;border-radius:7px;white-space:nowrap} </style> </head> <body> <div class="card"> <div class="hdr"> <span class="ic">&#128172;</span> <div class="t"> <div class="n">Open-Text Barriers · thematic analysis of open-ended survey responses</div> <div class="s">DEMO-04 · Sopact Sense · Workforce Program (Barriers Survey)</div> </div> <span class="pill"><span class="d"></span>Theming</span> </div> <div class="tabs" id="tabs"></div> <div class="divider"></div> <div class="body" id="body"></div> <div class="promptwrap"> <div class="promptlbl">The prompt behind this step</div> <div class="prompt"><span class="car">&gt;</span><span id="promptTxt"></span></div> </div> </div> <script> (function(){ var TABS = ["Setup", "Theme", "Fix", "Report"]; var CONTENT = [{"eyebrow": "Step 1 · Load the dataset", "headline": "Clean data, persistent contact IDs, one Decision Brief.", "lede": "The Assistant works only from the Open-Text Barriers dataset (DEMO-04) already loaded in Sopact Sense — nothing outside the record.", "prompt": "You are the Sopact Sense Assistant working over the [DEMO] dataset (clean data + persistent contact IDs). Load my Decision Brief (decision, audience, outcomes, indicators, evidence standard) first, then wait for my task."}, {"eyebrow": "Step 2 · Theme the open-ended question", "headline": "Do the counts reconcile to N?", "lede": "Every theme is named, counted, and graded <strong style=\"color:#15884F\">green</strong>, <strong style=\"color:#C9820A\">amber</strong>, <strong style=\"color:#C63E2B\">red</strong>.", "prompt": "Analyse all responses to [QUESTION]: themes, definitions, counts, 2 quotes each, 'other', prevalence reconciled to N. Hold single mentions. Grade green/amber/red."}, {"eyebrow": "Step 3 · One-fix follow-up", "headline": "Handle the 'other'.", "lede": "The Assistant takes the lowest-graded element — Other bucket, 1 ambiguous — and names the single indicator that would move it to green.", "prompt": "Take the lowest-graded element above and fix it using only what the program could realistically measure. Show the before → after grade and the single indicator/edit that moves it to green."}, {"eyebrow": "Step 4 · Missing & incomplete report", "headline": "Survey — Thematic Analysis Report", "lede": "Every amber or red item becomes one named ask — the report leads with the decision it informs.", "prompt": "Create a 'missing & incomplete' report from this analysis in Sopact branding [or paste your website URL / brand guideline to apply your own]. List every element graded amber or red, what is missing, and the one input that fixes each. Lead with the decision this report informs."}]; var BODIES = { setup: "<div class=\"row\"><span class=\"emoji\">&#128221;</span><div class=\"rt\"><div class=\"n\">Representative response</div><div class=\"s\">&quot;No reliable transport — the bus doesn&#x27;t run early enough.&quot; (transport + childcare recur across responses)</div></div><span class=\"pillsm\">Pasted</span></div><div class=\"row\"><span class=\"emoji\">&#128203;</span><div class=\"rt\"><div class=\"n\">DEMO-04 · Open-Text Barriers</div><div class=\"s\">1 Question · 18 Responses · Active</div></div><span class=\"pillsm gray\">Structure</span></div><div class=\"row\"><span class=\"emoji\">&#128274;</span><div class=\"rt\"><div class=\"n\">No hallucination rule</div><div class=\"s\">Only what the program states; infer = flagged</div></div><span class=\"pillsm gray\">Required</span></div>", build: "<div class=\"mxwrap\"><div class=\"mxhead\"><div></div><div>Count</div><div>% · quote</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Transport</div><div>5<span class=\"mxchip\" style=\"background:#15884F;color:#fff\">GREEN</span></div><div>28% · &quot;bus doesn&#x27;t run early&quot;</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Childcare</div><div>4</div><div>22% · &quot;no childcare&quot;</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Other</div><div>1<span class=\"mxchip\" style=\"background:#C9820A;color:#fff\">AMBER</span></div><div>6% · ambiguous</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Language</div><div>1<span class=\"mxchip\" style=\"background:#C63E2B;color:#fff\">RED</span></div><div>6% · hold</div></div></div>", fix: "<div class=\"mxwrap\"><div class=\"mxhead\"><div></div><div>Count</div><div>% · quote</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Transport</div><div>5<span class=\"mxchip\" style=\"background:#15884F;color:#fff\">GREEN</span></div><div>28% · &quot;bus doesn&#x27;t run early&quot;</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Childcare</div><div>4</div><div>22% · &quot;no childcare&quot;</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Other</div><div>GREEN · classifiable<span class=\"mxchip\" style=\"background:#15884F;color:#fff\">GREEN</span></div><div>6% · ambiguous</div></div><div class=\"mxrow\"><div class=\"mxlabel\">Language</div><div>1<span class=\"mxchip\" style=\"background:#C63E2B;color:#fff\">RED</span></div><div>6% · hold</div></div></div><div class=\"cnote\" style=\"color:#15884F;margin-left:0\"><span class=\"plus\">+</span><strong>Fix applied:</strong> Add a clarifying sub-question next round</div>", reportFlags: "<div class=\"flagrow\" style=\"border-left-color:#C9820A\"><span class=\"flagtag\" style=\"color:#C9820A;background:#FBF0DA\">AMBER</span><div class=\"flagtxt\">The &#x27;Other&#x27; bucket holds one ambiguous response that can&#x27;t be classified as written.</div></div><div class=\"flagrow\" style=\"border-left-color:#C63E2B\"><span class=\"flagtag\" style=\"color:#C63E2B;background:#FCE9E7\">RED</span><div class=\"flagtxt\">&#x27;Language&#x27; is a single-mention theme — held rather than reported until it recurs.</div></div>", lpTitle: "Missing & incomplete report · shareable link", lpSub: "Decision-first · Sopact branding · Open-Text Barriers · thematic analysis of open-ended survey responses", summaryBefore: "Grade: 1 green &middot; 1 amber &middot; 1 red. Counts reconcile to N=18 — transport and childcare dominate, one ambiguous, one single mention", summaryAfter: "Grade: 2 green &middot; 0 amber &middot; 1 red. The 'Other' bucket moves from ambiguous to classifiable with one clarifying sub-question" }; var phase = 1; var tabsEl = document.getElementById('tabs'); var bodyEl = document.getElementById('body'); var promptEl = document.getElementById('promptTxt'); function renderTabs(){ tabsEl.innerHTML = ''; TABS.forEach(function(label, i){ var b = document.createElement('button'); b.type = 'button'; b.className = 'tab' + (i === phase ? ' on' : ''); b.innerHTML = '<span class="num">' + (i+1) + '</span><span>' + label + '</span>'; b.addEventListener('click', function(){ phase = i; render(); }); tabsEl.appendChild(b); }); } function renderBody(){ var c = CONTENT[phase]; var eyebrowClass = (phase===2) ? 'eyebrow g' : 'eyebrow'; var out = '<div class="' + eyebrowClass + '">' + c.eyebrow + '</div><div class="headline">' + c.headline + '</div><p class="lede">' + c.lede + '</p>'; if (phase === 0) { out += '<div class="rows">' + BODIES.setup + '</div>'; } else if (phase === 1) { out += BODIES.build; out += '<div class="csummary"><div class="t"><b>' + BODIES.summaryBefore + '</b></div></div>'; } else if (phase === 2) { out += BODIES.fix; out += '<div class="csummary"><div class="t"><b>' + BODIES.summaryAfter + '</b></div></div>'; } else { out += BODIES.reportFlags; out += '<div class="lp"><span class="ic">&#128196;</span><div class="rt"><div class="n">' + BODIES.lpTitle + '</div><div class="s">' + BODIES.lpSub + '</div></div><span class="open">Open &rarr;</span></div>'; } bodyEl.innerHTML = out; promptEl.textContent = c.prompt; } function render(){ renderTabs(); renderBody(); } render(); })(); </script> </body> </html>
Sopact Academy · Course review

Practical Academy guide

How to Analyze Open-Ended Survey Responses

To analyze open-ended survey responses, decide what question the analysis should answer, preserve the original responses, define a small set of codes, review how those codes are applied and report patterns with a clear denominator. Keep the source evidence available so another reviewer can understand or challenge an interpretation.

The aim is to learn something useful from people’s words without flattening different experiences into a word count. This lesson produces a simple codebook, a reviewed response table and one evidence-based finding.

Start with a decision, not a list of popular words

A fictional service team asks customers what made onboarding difficult. The team needs to choose what to improve next. A word cloud may highlight “contact” or “setup,” but it cannot establish whether a person praised the contact, could not find the contact or had no setup problem.

Write the question the analysis must address. For example: “What difficulties did respondents describe, and which of those difficulties does the service team need to investigate?” This gives the review a purpose while leaving space for an issue the team did not anticipate.

Preserve the response and its context

Keep each original response with the survey question, collection date and appropriate record identifier. Where identified collection is permitted, this can connect to the relevant customer, participant or member record. Anonymous responses should remain compatible with the promise made to respondents.

Keep corrections and derived fields separate from the original. If a response is translated, retain both versions and record uncertainty about meaning. Removing names for a shared view should not silently rewrite the source wording in the analysis record.

Classify response status before themes. A blank answer, “not applicable,” “no problems” and a substantive complaint are different states. An empty response is not evidence that the person had no difficulty.

Choose what you are counting

You might count responses, people, accounts or distinct incidents. These are not interchangeable. One person can submit several check-ins, and one response can describe several difficulties.

For this example, the unit is a response to the onboarding question. Each response may receive more than one theme, but a theme is counted at most once per response. This avoids counting a repeated phrase as several people experiencing an issue.

If the decision instead concerns unique customers over a quarter, specify how multiple responses from the same customer are treated. A persistent record can help you make that calculation where linkage is appropriate; it does not choose the analytical rule for you.

Build a codebook that another reviewer can use

CodeIncludeDo not assume
Unclear next stepThe respondent says they did not know what to do or who would act nextA delayed action does not necessarily mean the instructions were unclear
Setup difficultyThe respondent describes difficulty completing the initial setupA mention of setup alone is not evidence of difficulty
Delayed responseThe respondent reports waiting for a reply or actionThe comment alone may not establish the actual elapsed time
Positive support experienceThe respondent describes helpful supportPositive support does not mean there were no other difficulties
Other or uncertainA relevant issue does not fit the current definitions, or meaning is unclearDo not force it into the nearest existing category

These are example codes, not a universal customer service taxonomy. Begin with the analysis question, read a varied sample and revise the definitions as you encounter evidence. Keep a version history so later readers know which codebook produced the results.

Work through three responses

Original responseSupported interpretationLimit or follow-up
“Setup worked, but I did not know who would call me next.”Unclear next stepDo not also mark setup difficulty
“The adviser was helpful. I waited several days before hearing back.”Positive support experience; delayed responseKeep reported duration distinct from a calculation using dated records
“No problems.”Explicit report of no problemsDo not treat it as a missing answer or as evidence about every part of the service

Review disagreements against the words and context. If two reviewers interpret a phrase differently, improve the definition or retain the uncertainty. Agreement between reviewers is useful evidence about the coding process; it does not by itself prove the interpretation is correct.

Use AI to assist review, with evidence attached

An AI-assisted workflow can propose codes, highlight relevant passages and flag ambiguous cases. Give it the question, code definitions, inclusion rules and examples. Ask for the supporting text rather than only a label.

Check a varied sample, including unflagged responses, mixed positive and negative comments, different languages and uncommon issues. Review consequential interpretations with an appropriate person. Reusing the same prompt does not guarantee the same judgment or make every coding decision valid.

In Sopact, the useful connection is between the source response, its continuing context, the shared definitions and the reviewed analysis. Preserve approved coding results and the calculation used for a report. A fresh AI summary should not silently replace the evidence behind an earlier finding.

Plan the recurring coding and reporting work

The reviewed response table is the starting point. Now plan how your team will apply the codebook across a growing dataset, revise it and ask questions that connect comments with ratings.

A workflow with repeated manual work

  1. Define from an initial sampleRead material and agree on the codebook.
  2. Apply it across the datasetCode responses and check the result.
  3. Revise a definitionReturn to affected material and recode it.
  4. Reconnect the numbersReconcile coded results with ratings and context, then rebuild the view.

The Sopact workflow

  1. Your team owns the definitionsDecide what each code means and improve it as you learn.
  2. Apply coding across the eligible dataAutomate application; people review quality and exceptions.
  3. Reprocess after a definition changesReapply the revised definition across the configured scope instead of recoding each response by hand.
  4. Ask across coded text and numbersKeep the response, rating and relevant record context connected; inspect the evidence behind the result.

This compares workflow patterns, not a claim that every research tool requires manual coding or separate files. Some already automate parts of this work; compare the complete cycle.

For this codebook-based workflow, the main saving is repeated application and reconnection—not the removal of human judgment. A changed definition can be reapplied across the configured data while reviewers concentrate on quality, exceptions and interpretation. Coded text stays connected to the relevant ratings and context.

Count the recurring work in ownership cost. Include setup, coding, recoding after revisions, source reconciliation, review and reporting, plus your actual platform and processing expenses. A worked scenario of four cycles of 4,000 responses illustrates 272 fewer annual staff hours; it is an assumption-based example, not a customer benchmark. Existing automation, review needs and implementation effort can substantially change the result.

Adjust the workload assumptions and compare total effort →

A reliable assistant should calculate from the selected records and let a reviewer open the supporting evidence. Check the data scope, definition, denominator and access permissions. Reproducible arithmetic does not make every AI interpretation correct.

Watch: Why Qualitative Analysis Stays Small — And How to Scale It

Watch this 2-minute 58-second explanation of repeated coding, revised definitions and connected analysis. Then estimate the work for your own collection cycle.

Watch this video on YouTube →

Report patterns without overstating them

Suppose 50 people were invited, 30 submitted a response and 24 provided substantive comments. Eight of those 24 mentioned an unclear next step. Report the base explicitly: eight of 24 substantive comments, alongside the response coverage. Do not describe that as eight of every 24 customers in the entire customer base.

If themes overlap, say so. Their percentages need not total 100%. A low-frequency issue may still require attention because of its consequences, but frequency alone does not establish severity. Distinguish how often something was mentioned from how important a team judges it to be.

Use quotations to illustrate a finding, not to imply that one vivid comment represents everyone. Check whether a quotation could identify someone before sharing it. Where the evidence conflicts, keep that visible rather than selecting only comments that support the preferred explanation.

Turn the finding into a reviewable next step

A useful finding names the theme, reporting base, supporting evidence, uncertainty and proposed action. For example: “Eight of 24 substantive onboarding comments described uncertainty about the next step. Review the handoff instructions and check the relevant service records before deciding whether the issue is unclear wording, ownership or delayed action.”

Assign an owner and record the response. At the next collection point, ask an appropriate question to learn what changed. A theme in feedback is a starting point for investigation, not proof of the cause or proof that an intervention worked.

Your exercise

  1. Choose one question and the decision it should inform.
  2. Define the unit of analysis and response-status categories.
  3. Draft three codes with inclusion rules and non-examples.
  4. Review a varied set of fictional or appropriately permitted responses.
  5. Record disagreements and revise the codebook.
  6. Write one finding with its denominator, evidence and limits.
  7. Assign the next action and decide what follow-up would be useful.

Self-check: Could another reviewer reproduce the reported count from the approved codes and inspect the source behind each interpretation? If not, improve the record before presenting the result.

Frequently asked questions

Can one response have several themes?

Yes, when the text supports them. Define whether each theme is counted once per response and explain overlapping percentages. Theme counts are not automatically counts of distinct people.

How should blank answers be handled?

Keep blanks distinct from explicit no-problem responses, not-applicable answers and substantive comments. Show the appropriate response coverage and denominator for the finding.

Can AI analyze the responses without review?

AI can assist with suggested codes and supporting passages. Review the definitions, ambiguous and consequential cases, and a varied sample including unflagged responses before relying on results.

Return to your course →

Put this guide into practice.

Start with a decision your team needs to make. Decide what information belongs together, how you will check it, and who is responsible for acting.

See context in action →
Prepare data governance before using AI
Prepare your data governance
nonprofit-data-governance-before-ai
Feedback
Foundation
Prepare an evidence register and a tested governance baseline before applying AI to program data.
Make learning part of the work you already do
The Loop — the method in one read
the-loop
Loop
The method
0
One continuous method for reliable, traceable AI reporting across case, application, grant, and program workflows: collect clean, analyze on arrival, and improve in time.
Teams running cases, applications, grants, or programs that need AI-assisted reporting they can reproduce, trace to source evidence, and act on before the cycle ends.
What Is Case Intelligence?
What Is Case Intelligence?
what-is-case-intelligence
Case
Foundation
1
One current, traceable record for each person—connecting intake, services, notes, surveys, documents, outcomes, decisions, and follow-up.
Workforce and training · Youth and mentoring · Case management · Scholarships · Accelerators · Education · Nonprofit programs
What Is Grant Intelligence?
What Is Grant Intelligence?
what-is-grant-intelligence
Grant
Foundation
1
One connected evidence record from application and committee review through the awarded grant, grantee reporting, renewal, and board accountability.
Foundations and grantmakers · Public grant programs · Scholarships and fellowships · Accelerators
What Is Portfolio Intelligence?
What Is Portfolio Intelligence?
what-is-portfolio-intelligence
Portfolio
Strategy
1
A source-linked portfolio view that connects each investee or grantee's agreed plan, reporting cadence, evidence, risks, and results.
Impact funds and investors · Foundations with grant portfolios · Family offices · Blended-finance vehicles
What Is Connected Data Intelligence?
What Is Connected Data Intelligence?
connected-data-intelligence
Feedback
Foundation
1
Keep evidence from surveys, files, notes, documents, systems, sites, and reporting periods connected to one continuing record.
Multi-program nonprofits · Member and chapter networks · Research associations · Training and coaching teams · Organizations with scattered evidence
Build an impact report from evidence you can explain
What Is Impact Measurement and Reporting?
embedded-impact-measurement
Reporting
Align
1
Define intended change, align organization and funder context, govern measures, interpret evidence, and produce traceable reports for decisions.
Program and impact teams · MEL leads · Funders and donors · Foundations · Impact funds · Organizations building rigorous impact reports
Build a repeatable collect, review and improve cycle
Methodology — continuous, not annual
loop-methodology
Loop
The method
1
The continuous collect–analyze–improve cycle, adopted as an experiment: start with the step that already pays and add one data-collection step at a time.
Teams tired of rebuilding spreadsheets and forms who want a measurement system that compounds instead of resetting.
How to Build a Theory of Change with AI: Prompts and Examples
Build a Theory of Change You Can Test
how-to-build-a-theory-of-change
Reporting
Align
2
How Do You Onboard a Portfolio and Track Results?
Agree the Portfolio Reporting Plan
onboard-portfolio-lock-impact-agreement-track-results
Portfolio
Data Dictionary
2
Test whether an AI-assisted result is repeatable and correct
Reliability — the same answer twice
loop-reliability
Loop
The method
2
Determinism as a feature: the same question over the same data returns the same answer every run — the opposite of a generic AI chat that drifts.
Anyone who has watched a general AI tool give two different numbers for the same question and needs results they can stand behind.
Design application intake around a defensible decision
Design an Application Process
how-to-design-an-application-process
Grant
Foundation
2
How to Structure Stakeholder Data: Four Common Patterns
Choose your record structure
which-shape-is-your-data
Feedback
Foundation
2
Map the people, observations and relationships your workflow needs before collecting data.
How to Build a Logic Model: Steps, Example and AI Prompt
Build a Logic Model You Can Use
how-to-build-a-logic-model
Reporting
Align
3
How Do You Onboard a Grant or RFP Program?
Onboard a Grant or RFP Program
how-to-onboard-a-grant-rfp-program
Grant
Foundation
3
Turn your theory of change into a data-collection plan
Turn a Theory of Change into a Data-Collection Workflow
theory-of-change-to-data-collection-workflow
Case
Foundation
3
Build a portfolio data dictionary without forcing false comparisons
Map Portfolio Data to Reporting Standards
portfolio-data-dictionary-standards-mapping
Portfolio
Chapters
3
Keep a clear trail from a finding to its evidence
Traceability & Transparency
loop-traceability
Loop
The method
3
Every figure links back to the exact response, note, or document it came from — a full audit trail from headline result to raw evidence.
Teams whose numbers get scrutinized — by funders, boards, auditors, or standards — and who need to answer where did this come from on the spot.
How to Change Survey Questions Without Losing Comparability
Change questions with a clear history
change-questions-without-breaking-the-record
Feedback
Control
3
Create a question-change log and decide how old and new versions should appear in reports.
Programme & MEL leads · Teams whose questionnaire has ossified · Anyone evaluating a platform where configuration is a purchased service
Five Dimensions of Impact: How to Review Your Evidence
Use the Five Dimensions to Test the Evidence
five-dimensions-of-impact
Reporting
Align
4
How Do You Design a Grant Rubric and Eligibility Rules?
Design Your Rubric & Eligibility Rules
grant-rubric-eligibility-rules
Grant
Foundation
4
How to Measure Outcomes Across an Investment or Grant Portfolio
Frame Outcomes Over Outputs at Portfolio Level
frame-outcomes-portfolio-level
Portfolio
Chapters
4
Adapt the learning cycle to your workflow
Flexibility — one method, four workflows
loop-flexibility
Loop
The method
4
The same collect–analyze–improve cycle, shaped to four kinds of impact work — case, grant, portfolio, and feedback — each shown end to end.
Anyone deciding where the Loop fits their work, who wants to see the full path from messy input to a report they can defend.
How to Collect Feedback Offline and Keep Records Connected
Collect offline and reconcile the batch
collect-feedback-offline
Feedback
Connect
4
Build a field protocol and reconcile a test batch across devices, visits and delayed uploads.
Field & multi-site programs · Low-connectivity contexts · Nonprofits collecting in person
How Do You Design an Intake Form for a Baseline?
Design an Intake Form That Captures a Usable Baseline
intake-form-usable-baseline
Case
Nonprofit Track
5
Turn a proposed outcome into a reporting definition
Outcomes vs Outputs
frame-outcomes-over-outputs
Grant
Foundation
5
Impact Due Diligence: Review Evidence Before Investment
Pre-Investment Due Diligence & Screening
pre-investment-due-diligence-screening
Portfolio
Chapters
5
Plan and review your first workflow pilot
The Guarantee — first workflow in 2 months
loop-guarantee
Loop
The method
5
How to Build an Organization Evidence Model
Build the Organization Evidence Model
build-organization-evidence-model
Reporting
Align
5
How to Analyze Documents as Evidence: Sources, Context and Review
Read documents as traceable evidence
read-documents-as-evidence
Feedback
Connect
5
Create a document register and reviewed findings with source locations, context and explicit exceptions.
How to Clean Open-Ended Survey Responses Without Losing Meaning
Clean responses and define the denominator
clean-open-ended-survey-responses
Feedback
Clean
6
Create a cleaning log, response-status table and reproducible report statement.
How to Review Participant Support Needs Mid-Program
Spot At-Risk Participants Mid-Program
spot-at-risk-participants-mid-program
Case
Nonprofit Track
6
How to Write a Nonprofit Grant Application: Template and Example
Grant Application for Nonprofits
grant-application-for-nonprofit-organizations
Grant
Foundation
6
Design quarterly portfolio reporting that investees can complete
Collect Investee Reporting Without Repeated Rework
collect-investee-reporting-without-burden
Portfolio
Chapters
6
How to Build a Funder Context Profile: Research to Reporting
Build a Sourced Funder Context Profile
build-funder-context-profile
Reporting
Align
6
How Do You Measure Change at Exit?
Measure Change at Exit (Not Just Completion)
measure-change-at-exit
Case
Nonprofit Track
7
How Do You Collect Applications Clean at the Source?
Collect Applications Clean at the Source
collect-applications-clean-at-source
Grant
Collect
7
How to Follow Up on Missing Investee Data
How to Follow Up on Missing Investee Data
chase-missing-investee-data
Portfolio
Chapters
7
How to Analyze Multilingual Feedback and Evaluate Software
Analyze and review multilingual feedback
analyze-multilingual-feedback
Feedback
Clean
7
Build a language review sheet and test software on original responses, translations, codes and reporting bases.
Multi-country programs · Multilingual survey data · Global networks & chapters
How to Define Impact Metrics Your Team and Funder Can Use
Define Measures the Organization and Funder Can Both Use
define-impact-metrics-funders-want
Reporting
Align
7
Survey Attrition in Longitudinal Studies: Track Missing Waves
Track missing waves and matched outcomes
survey-attrition-longitudinal-studies
Feedback
Read
8
Build a wave-status register, compare response groups and report paired change with coverage and limitations.
How to Use Mentor Notes to Review Participant Support
Use mentor notes for support review
mentor-notes-early-warning
Case
Nonprofit Track
8
How Do You Reduce Applicant Burden?
Reduce Applicant Burden
reduce-applicant-burden-auto-clarification
Grant
Collect
8
Find inconsistencies in portfolio returns before reporting
Analyze Investee Reports Across Sources
read-investee-reports-multi-signal
Portfolio
Chapters
8
Impact Metric Definitions: A Practical Worksheet and Example
Give Every Number One Definition
one-definition-for-every-number
Reporting
Define
8
How to Connect Quantitative and Qualitative Survey Data
Connect scores and comments
connect-quantitative-qualitative-survey-data
Feedback
Read
9
Build a linked analysis view and joint display, with clear groups, reporting bases and evidence limits.
How to Calculate SROI as New Evidence Arrives
Calculate SROI — Live, Sourced, and Honest
calculate-sroi-live
Case
Nonprofit Track
9
How to Collect Grantee Reports with Less Burden
Collect Grantee Reports Without Burden
collect-grantee-reporting-without-burden
Grant
Collect
9
Keep company, investment and reporting history connected
Track Results Against the Impact Agreement
track-investees-impact-agreement-variance
Portfolio
Chapters
9
Turn Reporting Requirements into Evidence: A Practical Mapping Guide
Turn Requirements Into Collectable Evidence
turn-reporting-requirements-into-evidence
Reporting
Define
9
Connect baseline, follow-up and different rater perspectives
Analyze pre, mid and post surveys
analyze-pre-mid-post-survey-data
Feedback
Read
10
Build a matched pre/mid/post analysis, interpret score movement and retain clear rules for missing waves.
How to Report a Job-Training Program to Grant Funders
Turn a Cohort into a Funder Impact Report
job-training-grant-impact-report
Case
Nonprofit Track
10
How to Follow Up on Missing Grantee Data
Chase Missing Grantee Data
chase-missing-grantee-data
Grant
Collect
10
How to Build Useful Portfolio Impact Monitoring Alerts
Build Useful Portfolio Impact Alerts
portfolio-risk-monitoring-alerts
Portfolio
Chapters
10
How to Collect Clean Data Inside Your Workflow
Collect Clean Evidence Inside the Workflow
collect-clean-data-at-the-source
Reporting
Embed
10
How to Analyze Longitudinal Survey Data
Analyze longitudinal survey data
analyze-longitudinal-survey-data
Feedback
Read
11
Build a continuing analysis record with clear time scales, observed trajectories and limits.
How to Turn a Job Description into a Requirements Checklist
Clarify employer requirements
job-description-requirements-checklist
Case
Social Enterprise Track
11
Review applications with evidence, clear criteria and human judgment
Review Without Reviewer Bias
review-applications-without-reviewer-bias
Grant
Analyze
11
How to Ask AI Questions About Your Portfolio Data
Ask AI Questions About Portfolio Data
ask-your-portfolio-anything
Portfolio
Chapters
11
How to Keep Impact Reporting Numbers Consistent
Get Stable Results From Governed Data
same-numbers-every-time
Reporting
Read
11
How Do You Analyze a Batch of Grant Applications?
Analyze a Whole Round
how-to-analyze-a-batch-of-grant-applications
Grant
Analyze
12
How to Measure Outcome Duration and Drop-Off
Measure outcome duration and drop-off
measure-outcome-duration-drop-off
Feedback
Read
12
Build a dated outcome claim, distinguish missingness from outcome loss and test forecast assumptions.
How to Score Candidate–Role Matches with a Clear Rubric
Review candidate–role evidence
score-candidate-role-matches-without-bias
Case
Social Enterprise Track
12
Evidence Traceability: Link Every Report Claim to Its Source
Trace Every Result Back to Its Evidence
where-every-number-came-from
Reporting
Read
12
How Do You Roll Up a Grant Portfolio?
Aggregate Outcomes Across a Grant Portfolio
how-to-roll-up-a-grant-portfolio
Portfolio
Chapters
13
How to Report Job Placements to Impact Investors
Turn a Cohort into a Social-Enterprise Investor Report
job-placement-investor-impact-report
Case
Social Enterprise Track
13
How Do You Track Reviewer Conflicts of Interest?
Track Reviewer Conflicts of Interest
track-conflicts-of-interest-audit
Grant
Analyze
13
How to Write a Donor Report: Format, Evidence and Example
Design a Report for a Real Funding Decision
donor-report-funders-trust
Reporting
Decide
13
Build a report brief and claim-and-evidence table before drafting. Explain delivery, outcomes, spending, limitations and next actions.
Program managers, grant leads and reporting teams
AI Data Access Controls: What Your Assistant May See
Control what the assistant can access
what-the-assistant-may-see
Feedback
Prove
13
Define task-specific access, test synthetic records and verify report-sharing boundaries.
How to Write an Evidence-Based Impact Narrative
Write a cited impact narrative
impact-narrative-funder-report-cited
Feedback
Prove
14
Build and check a report paragraph using a claim-and-source table, appropriate quotations and clear limitations.
How Do You Read a Grantee Report?
Read a Grantee Report
read-grantee-report-multi-signal
Grant
Analyze
14
How to Use SROI Across a Portfolio Without Double Counting
Use SROI Across a Portfolio
monetize-impact-sroi-across-levels
Portfolio
Chapters
14
How to Write a Funder Report with AI—and Check It
Generate the Audience-Specific Report From Evidence
assistant-writes-the-funder-report
Reporting
Decide
14
Draft from approved sources, check the claims, and save an accountable report version. Bring the brief from the previous lesson.
Program managers, grant leads and reporting teams
How Do You Compute Grantee Variance?
Compute Grantee Variance
how-to-compute-grantee-variance
Grant
Analyze
15
When Is a Monetary Value on Social Impact Credible?
Add a Credible Dollar Value With SROI
credible-dollar-value-on-impact
Reporting
Optional method
15
Prepare a valuation brief. Decide what the evidence supports, what needs more work, and when an outcome account is enough.
Program, evaluation and investment teams considering social-value estimates
Keep a person’s history connected across programs and staff changes
Follow one person over time
one-person-followed-for-years
Feedback
Shapes
15
Build a participant record that preserves episodes, dates, versions and missingness across repeated collection.
How Do You Build an SROI Value Map?
Build an SROI Value Map
how-to-build-an-sroi-value-map
Reporting
Optional method
16
Build a first value map, keep missing evidence visible, and give each unresolved outcome a next action.
Evaluation, program and investment teams preparing an SROI analysis
How Do You Track Budget and Actual Spend?
Track Budget vs Actual Spend
how-to-track-budget-invoices-actual-spend
Grant
Analyze
16
Multi-Rater Feedback: Connect Perspectives and Protect Context
Connect several perspectives on one person
several-people-describing-one-person
Feedback
Shapes
16
Design subject-rater relationships, reporting rules and a tested multi-perspective feedback record.
How Do You Pick a Financial Proxy for SROI?
Pick a Defensible Financial Proxy
how-to-pick-a-financial-proxy-for-sroi
Reporting
Optional method
17
Compare candidate valuation sources and document why one fits your outcome, stakeholder and reporting period.
Evaluation and reporting teams selecting financial proxies
How Do You Analyze Grantee Reporting Longitudinally?
Analyze Grantee Reporting Over Time
analyze-grantee-reporting-longitudinal
Grant
Analyze
17
How Do You Compare Investees When Each One Defines Its Metrics Differently?
Compare & Benchmark Investees
compare-benchmark-investees
Portfolio
Chapters
17
Cross-Program Reporting: Combine Results Without Losing Meaning
Combine evidence across programs
many-programs-one-picture
Feedback
Shapes
17
Build a defensible cross-program result with comparable measures, correct denominators and documented exclusions.
How Do You Calculate the SROI Ratio?
Calculate the SROI Ratio With a Range
how-to-calculate-the-sroi-ratio
Reporting
Optional method
18
Build a reproducible SROI calculation, test its assumptions and explain the result in a reviewed report.
Evaluation and reporting teams reviewing an SROI calculation
How to Read Form 990 for a Grant Review
Read a 990 for Compliance
how-to-read-a-990-for-compliance
Grant
Analyze
18
How Do You Build Dashboards and Compliance Reports?
Build Dashboards and Reviewed Reports
dashboards-sroi-compliance-reports
Portfolio
Chapters
18
Plan evidence collection across your network
Run a member-network survey
member-network-survey
Feedback
Shapes
18
Design and test a member reporting cycle with continuing records, coverage checks and authorized results.
Ask Your Whole Grant Round Anything (Assistant + MCP)
Ask Your Whole Grant Round Anything
ask-your-grant-round-anything
Grant
Analyze
19
Produce portfolio reports that trace back to approved evidence
Produce the LP and Board Impact Report
portfolio-lp-board-impact-report
Portfolio
Chapters
19
How Do You Build a Grant Audit Trail?
Build a Grant Audit Trail
grant-audit-compliance-trail
Grant
Communicate
20
How Do You Connect Your Stack Without Lock-In?
Connect Systems and Test Data Portability
portfolio-connect-your-stack
Portfolio
Chapters
20
How Do You Produce Grant Compliance Reports?
Produce Compliance Reports
grant-compliance-regulatory-reports
Grant
Communicate
21
How Do You Roll Grantees Into a Board Report?
Roll Grantees Into a Board Report
roll-grantees-funder-board-report
Grant
Communicate
22
How Do You Build Grant Dashboards and Maps?
Grant Dashboards & Maps
grant-dashboards-geographic-mapping
Grant
Communicate
23