Sopact Sense · Prompt Library

Assessment prompts that give the same answer every time

Framework-grounded prompts for scoring and analysing qualitative and quantitative stakeholder data — SROI, Kirkpatrick, IMP Five Dimensions, Theory of Change and custom rubrics. Built to be deterministic, citable, and ready to run in Sopact Sense.

Deterministic

Same input, same answer

Cited

Every score traces to source

Composable

Cell, Row, Column & Grid

Growing

New prompts added often

How the library is organised

Every prompt is tagged by reading scope and analysis stage

The scope maps to the Sopact Sense Intelligent Suite. The stage works anywhere — even without Sopact Sense. Filter the library below by either.

Cell

One field, closely

Read one field or document and return a score with citations pinned to that field.

Row

One whole record

Read every field of one stakeholder at once for a multi-criteria score with a reasoning trace.

Column

One question, everyone

Read one question across every respondent and return named, counted themes with quotes.

Grid

The whole dataset

Read across cohorts and years for pre/post change, benchmarks and portfolio patterns.

1 · Define

2 · Extract

3 · Score

4 · Theme

5 · Compare

6 · Report

The library

Unlock the full library

Enter your email to open the full library, then filter by engine, scope or stage and copy any prompt with one click.

Where should we send access?

Enter your work email to open the full prompt library on this page and get the editable spreadsheet version.

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
Engine
Scope
Stage
Showing all prompts
Cell2 · Extract
Application · Custom scoring rubric + thematic

Score one application essay and surface what it reveals

You are scoring ONE application essay against a frozen rubric. Rubric (score each 1-5; 1=no/contradicted evidence, 3=present but generic, 5=specific, vivid and verifiable): writing_quality, evidence_of_resilience, motivation_clarity, program_fit. Then extract up to 4 themes. Use only the essay text for {program_name}. Do not reward length or eloquence over evidence.
Schema: {writing_quality:1-5, evidence_of_resilience:1-5, motivation_clarity:1-5, program_fit:1-5, themes:[string], rationale_per_criterion:string}
APP-C1
Cell2 · Extract
Application · Custom rubric

Pre-screen an essay for integrity / red flags

Review ONE essay for evidence-based concerns only: internal contradictions, claims that cannot be supported by the rest of the application, and signals of possible non-authentic authorship. Report observations, not verdicts. Recommend human review where uncertain.
Schema: {concerns:[{type, observation, evidence_quote, confidence:low|med|high}], recommend_human_review:boolean}
APP-C2
Cell2 · Extract
Application · Extraction schema

Turn a resume into structured fields

Extract structured experience from ONE resume. Normalise dates to YYYY-MM. Do not infer titles or skills not stated. Mark gaps over 6 months.
Schema: {roles:[{title, org, start, end, summary}], education:[{credential, institution, year}], skills:[string], gaps:[string]}
APP-C3
Row3 · Score
Application · Custom multi-criteria rubric

Whole-record applicant fit assessment

Read the ENTIRE record for {applicant_id} and produce one fit score against the program rubric. Criteria & weights: academic_readiness {w}, demonstrated_need {w}, program_fit {w}, leadership_potential {w}, resilience {w}. Weight, combine, and explain how each field contributed. You validate evidence; you do not invent scores beyond what the record supports.
Schema: {fit_score:0-5, criteria:[{name, score, weight, citation}], reasoning_trace:string, reviewer_override:null}
APP-R1
Row3 · Score
Application · Rules checklist

Eligibility & completeness gate

Check record {applicant_id} against eligibility rules: {rule_list}. Return pass/fail per rule and an overall completeness status. List any missing required documents.
Schema: {eligible:boolean, rules:[{rule, status:pass|fail|unclear, evidence}], missing_docs:[string]}
APP-R2
Column4 · Theme
Application · Thematic

What motivates and blocks our applicants

Across ALL responses to {question} for cohort {cohort}, identify recurring themes. Name each theme, define it, count responses, attach 2 representative quotes, and keep an other bucket. Report prevalence as count and %.
Schema: {themes:[{name, definition, count, pct, quotes:[string]}], other_count:int, n_total:int}
APP-K1
Grid5 · Compare
Application · Comparative

Cohort-over-cohort applicant quality & mix

Compare cohorts {cohort_a} vs {cohort_b} on: mean fit_score, score distribution, demographic mix ({dimensions}), and top motivation themes. Report deltas and flag any shift that may signal an access or outreach issue.
Schema: {by_cohort:[{cohort, n, mean_fit, distribution, demographics, top_themes}], deltas:{...}, flags:[string]}
APP-G1
Row3 · Score
Scholarship · Custom rubric

Need + merit composite award score

Score applicant {id} on a frozen need+merit rubric. Merit criteria (1-5): academic_merit, leadership, essay_strength. Need criteria (1-5): financial_need, barrier_severity, first_gen_status. Combine using weights {merit_w}/{need_w}. Explain each.
Schema: {merit:{...}, need:{...}, composite:0-5, citations:[...], reviewer_override:null}
SCH-R1
Cell2 · Extract
Scholarship · Extraction

Structure a financial-need narrative

From ONE need narrative, extract structured need indicators: household_dependents, income_band (as stated), disruptions, prior_aid, unmet_need_signals. Do not estimate income not stated.
Schema: {household_dependents:int|null, income_band:string|null, disruptions:[string], prior_aid:string|null, unmet_need_signals:[string]}
SCH-C1
Column4 · Theme
Scholarship · Thematic

Aspiration & field-of-study landscape

Across all {question} responses, cluster intended fields and aspirations. Name clusters, count, attach quotes, and note any underrepresented field worth targeted recruitment.
Schema: {clusters:[{name, count, pct, quotes}], underrepresented:[string], n_total:int}
SCH-K1
Grid5 · Compare
Scholarship · Comparative

Award equity audit

Compare applicant pool vs awarded pool across {dimensions}. Report selection rate by subgroup and flag disparities over {threshold} for human review. Describe, do not adjudicate.
Schema: {by_subgroup:[{group, applied_n, awarded_n, rate}], disparities:[{group, gap, flag}], note:string}
SCH-G1
Grid5 · Compare
Scholarship · Longitudinal

Alumni outcome tracking by award cohort

For award cohort {cohort}, link alumni follow-up to original records by stakeholder ID. Report completion, employment/further-study status, and confidence change pre to alumni. Note non-respondents.
Schema: {n_awarded:int, n_responded:int, completion_rate, outcome_breakdown, confidence_delta, nonrespondents:int}
SCH-G2
Cell2 · Extract
Essay & Proposal · Custom rubric

Score a long essay with section anchors

Score ONE long essay against frozen criteria (1-5 each): thesis_clarity, argument_evidence, structure, originality, mechanics. Score the WHOLE piece, not the first page. Give a section-level note for intro / body / conclusion.
Schema: {scores:{...}, section_notes:{intro, body, conclusion}, overall:0-5}
ESS-C1
Cell2 · Extract
Essay & Proposal · Theory of Change

Extract a Theory of Change from a large proposal

From ONE proposal, extract ToC components: problem, target_population, inputs, activities, outputs, short/medium/long_outcomes, assumptions, external_factors. Mark each MISSING / WEAK / STRONG and flag any activity with no linked outcome.
Schema: {components:[{name, strength:MISSING|WEAK|STRONG, evidence}], logic_gaps:[string]}
ESS-C2
Row3 · Score
Essay & Proposal · Custom rubric

Whole-proposal quality assessment

Assess proposal {id} across: problem_significance, approach_feasibility, evidence_base, budget_realism, expected_impact, team_capacity (1-5, weighted {weights}). Produce one quality score + a 5-line reviewer brief.
Schema: {criteria:[{name, score, weight, citation}], quality_score:0-5, reviewer_brief:string}
ESS-R1
Cell6 · Report
Essay & Proposal · Summarisation w/ citations

One-page reviewer brief from a long proposal

Condense ONE proposal into a one-page brief: ask, problem, approach, outcomes claimed, budget, 3 strengths, 3 risks. Every line cites its source page.
Schema: {ask, problem, approach, outcomes_claimed, budget, strengths:[3], risks:[3]} with page refs
ESS-C3
Column4 · Theme
Essay & Proposal · Thematic

Strengths & weaknesses across a proposal pool

Across all proposals in round {round}, identify the most common strengths and weaknesses. Name, count, quote. Separate fixable in resubmission from fundamental.
Schema: {strengths:[{name,count,quote}], weaknesses:[{name,count,quote,fixable:boolean}], n:int}
ESS-K1
Cell2 · Extract
Training & Vocational · Kirkpatrick L1

Code Level-1 reaction feedback

From ONE learner post-course feedback, extract Kirkpatrick Level-1 signals: satisfaction (1-5 if stated/derivable), perceived_relevance, perceived_difficulty, and improvement_suggestions. Do not infer satisfaction if absent.
Schema: {satisfaction:1-5|null, relevance:string, difficulty:string, suggestions:[string]}
TRN-C1
Column4 · Theme
Training & Vocational · Kirkpatrick L1 + thematic

Level-1 drivers across a cohort

Across all learners in {cohort}, find the top drivers of satisfaction and dissatisfaction. Name, count, quote. Tie suggestions to specific course modules where named.
Schema: {drivers_pos:[{theme,count,quote}], drivers_neg:[{theme,count,quote}], module_flags:[string], n:int}
TRN-K1
Grid5 · Compare
Training & Vocational · Kirkpatrick L2

Level-2 learning: pre/post knowledge change

For cohort {cohort}, compute knowledge/confidence change per learner by joining pre and post on stakeholder ID. Report per-learner delta, cohort mean delta, and % who improved. Flag learners with no post record.
Schema: {per_learner:[{id, pre, post, delta}], mean_delta, pct_improved, missing_post:[id]}
TRN-G1
Grid5 · Compare
Training & Vocational · Kirkpatrick L3

Level-3 behavior: on-the-job application

For cohort {cohort}, assess behavior change from the 90-day follow-up: self-reported application + manager-observed application of {skills}. Triangulate the two sources and report agreement. Flag skills not being applied.
Schema: {by_skill:[{skill, self_score, manager_score, agreement, applied:boolean}], barriers:[string]}
TRN-G2
Grid5 · Compare
Training & Vocational · Kirkpatrick L4

Level-4 results: link behavior to outcomes

For cohort {cohort}, relate L3 behavior to outcome metric {metric} (e.g. placement, wage gain, productivity). Report the association descriptively, state the counterfactual limit, and avoid causal claims without a comparison group.
Schema: {behavior_summary, outcome_summary, association:string, counterfactual_note, confidence:low|med|high}
TRN-G3
Row3 · Score
Training & Vocational · Vocational competency framework

Competency alignment to a skills standard

Assess trainee {id} against the {standard} competency framework. For each competency, rate not_yet / emerging / proficient with evidence from assessments, projects, or mentor notes. Identify the gap to proficient.
Schema: {competencies:[{name, level, evidence}], gaps:[string], overall_readiness:string}
TRN-R1
Cell1 · Define
Training & Vocational · Kirkpatrick

Map a survey to Kirkpatrick levels

Tag each question in {survey} with the Kirkpatrick level it measures (L1-L4) or none. Flag levels with no coverage and propose one question to fill each gap.
Schema: {questions:[{q, level:L1-L4|none}], uncovered_levels:[string], proposed:[{level, question}]}
TRN-C2
Cell2 · Extract
Mentorship & LMS · Extraction + thematic

Structure a mentor session note

From ONE session note, extract: topics_discussed, mentee_goals_progress, blockers, action_items, relationship_quality_signal (positive/neutral/strained with evidence). Do not infer emotion not expressed.
Schema: {topics:[string], progress:string, blockers:[string], actions:[string], relationship_signal:{value, evidence}}
MEN-C1
Grid5 · Compare
Mentorship & LMS · Longitudinal

Mentee growth trajectory across sessions

For mentee {id}, trace progress across all sessions in date order. Summarise trajectory on {goal_areas}, note momentum (improving/flat/declining), and surface unresolved blockers carried 3+ sessions.
Schema: {timeline:[{date, summary}], trajectory_by_goal:{...}, momentum:string, stale_blockers:[string]}
MEN-G1
Cell2 · Extract
Mentorship & LMS · Competency tagging

Extract learning evidence from an LMS reflection

From ONE reflection, identify demonstrated learning and tag to {competency_set}. Rate evidence depth (surface/applied/transfer). Flag misconceptions.
Schema: {demonstrated:[{competency, depth, quote}], misconceptions:[string]}
MEN-C2
Grid5 · Compare
Mentorship & LMS · Mixed quant+qual

Engagement-to-outcome patterns in an LMS

Across cohort {cohort}, relate engagement signals ({signals}: logins, completion, time-on-task) to learning outcomes. Describe patterns (e.g. which behavior precedes mastery) without claiming causation. Identify at-risk profiles.
Schema: {patterns:[string], at_risk_profile:string, outcome_by_engagement_band:[{band, outcome}]}
MEN-G2
Row3 · Score
Mentorship & LMS · Custom rubric

Mentor-mentee fit / risk read

For pair {pair_id}, assess fit and risk from all notes: meeting_consistency, goal_alignment, rapport, escalation_flags. Recommend continue / re-match / human review.
Schema: {fit_score:1-5, factors:[{name, value, evidence}], escalations:[string], recommendation:enum}
MEN-R1
Cell2 · Extract
Case Intelligence · Extraction

Structure one case-manager note

From ONE case note for {client_id}, extract: presenting_needs, progress_since_last, services_provided, risks_or_concerns, next_steps, stage_of_change (precontemplation to maintenance, if derivable). Describe only what is written.
Schema: {needs:[string], progress:string, services:[string], risks:[string], next_steps:[string], stage_of_change:string|null}
CAS-C1
Cell2 · Extract
Case Intelligence · Risk triage

Surface a safeguarding / risk flag

Scan ONE note for explicit risk indicators ({indicators}: harm, crisis, disclosure). If present, quote it, rate urgency (monitor / follow-up / urgent), and mark recommend_human_review=true. If none, say so.
Schema: {flags:[{indicator, quote, urgency}], recommend_human_review:boolean}
CAS-C2
Row3 · Score
Case Intelligence · Stage-of-change / domains

Holistic client status across the record

For client {id}, synthesise current status across {life_domains} (e.g. housing, employment, wellbeing, education). Rate each domain (at-risk / stabilising / thriving) with evidence and date, and note the single most pressing need.
Schema: {domains:[{name, status, evidence, as_of}], top_priority:string}
CAS-R1
Column4 · Theme
Case Intelligence · Thematic

Recurring barriers across the caseload

Across all clients in {program}, identify the most common barriers. Name, count, quote, and tag system-level vs individual-level. Note which barriers co-occur.
Schema: {barriers:[{name, count, pct, level:system|individual, quote}], co_occurrence:[string], n:int}
CAS-K1
Grid5 · Compare
Case Intelligence · Longitudinal

Caseload progress over time - who is stalling

For {program}, track progress per client over time. Identify clients with no positive movement in {n} months and cluster the reasons. Report cohort momentum and the stalled list for review.
Schema: {cohort_momentum:string, stalled:[{id, last_progress_date, likely_reason}], reason_clusters:[string]}
CAS-G1
Row3 · Score
Case Intelligence · SEL / youth-development domains

Align youth progress to a development framework

Assess youth {id} against {framework} domains (e.g. social-emotional, academic, identity, agency). Rate each emerging/developing/demonstrated with evidence from notes and activities. Identify growth since intake.
Schema: {domains:[{name, level, evidence}], growth_since_intake:string}
CAS-R2
Column4 · Theme
Survey & Pre/Mid/Post · Thematic

Thematic analysis of one open-text question

Analyse all responses to {question}. Name themes, define each, count, give 2 quotes, keep an other bucket, and report prevalence (count + %). Do not merge distinct themes.
Schema: {themes:[{name, definition, count, pct, quotes}], other:int, n_total:int}
SUR-K1
Column4 · Theme
Survey & Pre/Mid/Post · Thematic + sentiment

Sentiment + driver analysis

For {question}, classify each response sentiment (positive/neutral/negative) and extract the driver behind it. Report sentiment split and top 3 drivers per sentiment with quotes.
Schema: {sentiment_split:{pos,neu,neg}, drivers:{positive:[...], negative:[...]}, n:int}
SUR-K2
Grid5 · Compare
Survey & Pre/Mid/Post · Longitudinal quant

Pre/mid/post change per respondent

For {metric} in cohort {cohort}, join pre/mid/post on stakeholder ID. Report per-respondent trajectory, cohort means at each point, and % with sustained improvement. Flag IDs missing any wave.
Schema: {per_id:[{id, pre, mid, post}], means:{pre,mid,post}, pct_sustained, missing_waves:[id]}
SUR-G1
Grid5 · Compare
Survey & Pre/Mid/Post · Mixed methods

Explain WHY a metric moved (quant + qual)

Cohort {cohort} {metric} moved {direction}. Using the open-text {question} from the same IDs, explain the change: which themes appear among improvers vs non-improvers. Quantify and quote.
Schema: {movement:number, improver_themes:[{name,count,quote}], non_improver_themes:[...]}
SUR-G2
Cell2 · Extract
Survey & Pre/Mid/Post · Data hygiene

Clean one messy open-text field

Normalise {field}: trim, de-duplicate near-identical answers, standardise spelling/casing of recurring entities, and bucket obvious categories. Preserve originals alongside cleaned values. Flag ambiguous cases.
Schema: {rows:[{original, cleaned, category, ambiguous:boolean}]}
SUR-C1
Grid5 · Compare
Survey & Pre/Mid/Post · Equity analysis

Disaggregate outcome change by subgroup

Break {metric} change for cohort {cohort} by {dimensions}. Report change per subgroup, the gap to the cohort mean, and flag any subgroup left behind for review.
Schema: {by_subgroup:[{group, n, change, gap_to_mean}], left_behind:[string]}
SUR-G3
Cell2 · Extract
Portfolio & SROI · SROI / IMP

Extract outcomes from one investee/grantee report

From ONE report for {org}, extract: inputs (incl. in-kind), outputs, outcomes by stakeholder group, indicators used, and any stated financial proxies or beneficiary counts. Mark MISSING where the report is silent.
Schema: {inputs:[...], outputs:[...], outcomes:[{stakeholder, outcome, indicator, value|null}], proxies:[...], missing:[string]}
SRO-C1
Row3 · Score
Portfolio & SROI · SROI

SROI value map (outcome data available)

Build an SROI value map for {program}. For each material outcome: state stakeholder, indicator, quantity, financial_proxy (with source), deadweight %, attribution %, displacement %, drop_off %, duration. Show the net value calculation per outcome. Be conservative; involve stakeholder evidence for proxies.
Schema: {outcomes:[{stakeholder, indicator, qty, proxy, proxy_source, deadweight, attribution, displacement, drop_off, duration, net_value}]}
SRO-R1
Row6 · Report
Portfolio & SROI · SROI

Compute SROI ratio with NPV

From the value map for {program}, discount multi-year net values at {discount_rate}, sum to present value, divide by total inputs, and report the SROI ratio. Run a sensitivity check varying the top 2 assumptions by plus/minus {pct}% and report the ratio range.
Schema: {npv, total_inputs, sroi_ratio, sensitivity:[{assumption, low_ratio, high_ratio}]}
SRO-R2
Grid5 · Compare
Portfolio & SROI · SROI

Portfolio SROI rollup

Aggregate SROI across the portfolio {portfolio}. Report blended ratio, contribution by investee, and which outcomes drive most value. Weight by input size. Flag investees with low evidence quality.
Schema: {blended_ratio, by_investee:[{org, inputs, value, ratio, evidence_quality}], top_value_drivers:[string]}
SRO-G1
Grid5 · Compare
Portfolio & SROI · SROI / benchmark proxy

Portfolio SROI when per-investee outcomes are thin

For portfolio {portfolio} lacking complete outcome data, estimate value using benchmark proxies for {sector} where direct data is missing. Clearly separate measured value from benchmarked value and assign a confidence level to each line. Recommend what to collect next.
Schema: {by_investee:[{org, measured_value, benchmarked_value, confidence}], total_range, data_gaps:[string]}
SRO-G2
Cell1 · Define
Portfolio & SROI · SROI

Assign a financial proxy to an outcome

For outcome {outcome} affecting {stakeholder}, propose 1-2 financial proxies. For each: value, named source, rationale, and a conservatism note. Prefer stakeholder-derived or published proxies over assumption.
Schema: {proxies:[{value, source, rationale, conservatism_note}]}
SRO-C2
Grid5 · Compare
Portfolio & SROI · IMP 5D

IMP Five Dimensions classification across portfolio

Classify each investee in {portfolio} on the five IMP dimensions (What, Who, How Much, Contribution, Risk), scoring each on evidence quality 1-5. Assign an impact class (Avoid Harm / Benefit / Contribute to Solutions). Flag thin Who depth.
Schema: {by_investee:[{org, what, who, how_much, contribution, risk, impact_class}], flags:[string]}
SRO-G3
Row3 · Score
Portfolio & SROI · SROI

Estimate deadweight & attribution from stakeholder evidence

For outcome {outcome}, estimate deadweight (what would have happened anyway) and attribution (share due to others) using {evidence} (stakeholder reports, comparison group, prior trend). State each as a % with its basis and a confidence level.
Schema: {deadweight:{pct, basis, confidence}, attribution:{pct, basis, confidence}}
SRO-R3
Cell2 · Extract
Grant Intelligence · Rules checklist

Grant eligibility & completeness

Check application {id} against {eligibility_rules}. Return pass/fail per rule, completeness status, and missing attachments. Flag anything needing clarification rather than rejecting outright.
Schema: {eligible:boolean, rules:[{rule,status,evidence}], missing:[string], clarify:[string]}
GRN-C1
Row3 · Score
Grant Intelligence · Custom rubric (grant)

Score a grant proposal

Score proposal {id} on: need_evidence, organisational_capacity, approach_feasibility, expected_impact, budget_justification, sustainability (1-5, weighted {weights}). Produce one score + reviewer brief. Validate the applicant claims against their own attachments.
Schema: {criteria:[{name, score, weight, citation}], total:0-5, reviewer_brief:string}
GRN-R1
Column4 · Theme
Grant Intelligence · Thematic

Landscape of what is being requested

Across round {round}, cluster the work being proposed by theme, population served, and geography. Count and quote. Surface gaps vs the funder priorities {priorities}.
Schema: {clusters:[{theme, count, populations, geographies, quote}], priority_gaps:[string], n:int}
GRN-K1
Cell2 · Extract
Grant Intelligence · Outcome variance

Grantee progress vs targets

From ONE progress report for {grantee}, extract each committed target, the reported actual, and compute variance. Classify on-track / at-risk / off-track and capture the grantee stated reason for any gap.
Schema: {targets:[{name, target, actual, variance, status, reason}]}
GRN-C2
Grid5 · Compare
Grant Intelligence · ToC + rollup

Portfolio outcome rollup + ToC alignment

Aggregate outcomes across portfolio {portfolio} and map them to the funder Theory of Change outcomes {toc_outcomes}. Report contribution per ToC outcome, coverage gaps, and grantees driving each outcome.
Schema: {by_toc_outcome:[{outcome, total, contributing_grantees, coverage}], gaps:[string]}
GRN-G1
Cell2 · Extract
Grant Intelligence · Compliance extraction

Compliance evidence from an audit / 990-PF

From ONE document for {org}, extract compliance-relevant facts: total expenses, program vs admin split, restricted-fund use, governance notes, and any auditor concerns. Quote exact figures.
Schema: {financials:{...}, fund_use:string, governance_notes:[string], auditor_concerns:[string]}
GRN-C3
Grid5 · Compare
Longitudinal & Cohort · Longitudinal

Year-1 to Year-N change per stakeholder

For {population}, trace each stakeholder change on {metrics} from first record to latest, joined on persistent ID. Report per-ID change, cohort distribution of change, and notable trajectories (biggest gain, biggest decline).
Schema: {per_id:[{id, first, latest, change}], distribution, notable:[{id, pattern}]}
LON-G1
Grid5 · Compare
Longitudinal & Cohort · Comparative

Cohort-vs-cohort benchmarking

Benchmark cohorts {cohorts} on {metrics}. Normalise for cohort size and program length. Report deltas, what improved, and any measurement change that could confound the comparison.
Schema: {by_cohort:[{cohort, n, metrics}], deltas:{...}, confounds:[string]}
LON-G2
Grid5 · Compare
Longitudinal & Cohort · Data completeness

Attrition & follow-up gaps

For {population}, identify who is missing expected follow-up waves and when drop-off happens. Cluster likely reasons from available data and compare responders vs non-responders on baseline traits.
Schema: {missing:[{id, last_wave}], dropoff_point:string, responder_vs_nonresponder:{...}}
LON-G3
Grid6 · Report
Longitudinal & Cohort · Mixed methods

Narrative of change across cycles

For {population}, write an evidence-led narrative of change across cycles: what shifted in the numbers and what the stakeholders own words say about why. Anchor every claim to a citation. Keep it neutral and specific.
Schema: {narrative:string, key_changes:[{claim, quant_cite, qual_quote}]}
LON-G4
Grid5 · Compare
Longitudinal & Cohort · SROI duration / persistence

Sustained outcome (drop-off & duration)

For outcome {outcome} in {population}, estimate how long it persists using the multiple post-program measures: report the drop-off rate between points and the implied duration. State the evidence limit beyond the last measured point.
Schema: {measures:[{point, value}], dropoff_rate, implied_duration, evidence_limit:string}
LON-G5
Cell1 · Define
Framework Builders · Theory of Change

Build a Theory of Change from a program description

STEP 1 TASK: From the description of {program} (who you serve, what you do, the outcome you want), draw a Theory of Change as a causal chain: inputs to activities to outputs to short, medium and long-term outcomes to impact. STEP 2 CONTEXT: Use only what is stated; if a narrative or transcript is provided build from its framing and mark anything inferred [INFERRED]. STEP 3 OUTPUT: Render the chain and, under each arrow, name the assumption it depends on; flag the weakest links. STEP 4 FOLLOW-UP: For each weak link, propose one indicator to track this year. Do not over-claim impact.
Schema: {chain:[{stage, items:[string]}], arrows:[{from, to, assumption, strength:strong|moderate|weak}], weak_links:[string], measures:[{assumption, indicator}]}
FWB-01
Cell1 · Define
Framework Builders · Logic Model

Build a Logic Model with gap flags

STEP 1 TASK: Build a Logic Model for {program} across Inputs, Activities, Outputs, Short-term and Long-term Outcomes, and Impact. STEP 2 CONTEXT: Use the description or pasted documents only; mark inferred items [INFERRED]. STEP 3 OUTPUT: Lay out the columns; mark any box with no evidence yet as a GAP and any activity with no linked outcome as a logic gap. STEP 4 FOLLOW-UP: Suggest one output indicator and one outcome indicator to close the biggest gaps.
Schema: {columns:[{name, items:[string]}], gaps:[string], orphan_activities:[string], suggested_indicators:[string]}
FWB-02
Cell1 · Define
Framework Builders · Logframe

Build a Logframe (4x4 matrix)

STEP 1 TASK: Create a Logframe for {program} as a 4x4 matrix. Rows: Goal, Purpose, Outputs, Activities. Columns: Narrative summary, Indicators (SMART), Means of verification, Assumptions. STEP 2 CONTEXT: Build from the description or pasted documents; mark inferred cells [INFERRED]. STEP 3 OUTPUT: Fill every cell; flag indicators that are not measurable and assumptions that are really risks; highlight empty required cells. STEP 4 FOLLOW-UP: Rewrite the two weakest indicators into SMART form.
Schema: {matrix:[{level, narrative, indicators:[string], means_of_verification:[string], assumptions:[string]}], not_smart:[string], empty_cells:[string]}
FWB-03
Cell1 · Define
Framework Builders · Results Framework

Build a Results Framework hierarchy

STEP 1 TASK: Map a Results Framework for {program}: one Strategic Objective, the 3-5 Intermediate Results that achieve it, and the Sub-IRs under each. STEP 2 CONTEXT: Use the description or pasted narrative; mark inferred items [INFERRED]. STEP 3 OUTPUT: Show the hierarchy with at least one indicator (baseline and target) per result; flag results that do not ladder up to the objective. STEP 4 FOLLOW-UP: Propose a baseline source for each indicator that lacks one.
Schema: {strategic_objective, intermediate_results:[{name, sub_irs:[string], indicators:[{name, baseline, target}]}], unlinked:[string]}
FWB-04
Cell2 · Extract
Framework Builders · Theory of Change · from URL

Audit a Theory of Change from a URL

strongweakmissing
STEP 1 TASK: Read the program or proposal at {url} and reconstruct its Theory of Change (inputs to activities to outputs to short/medium/long-term outcomes to impact). STEP 2 CONTEXT: Use only the page content; never invent. STEP 3 OUTPUT: Grade every component and arrow on a traffic light - GREEN strong (specific and evidenced), AMBER weak (vague or unevidenced), RED missing. List the strong signals, the weak links, and the missing components in separate groups. STEP 4 FOLLOW-UP: for each RED or AMBER, say what one sentence or data point would move it to GREEN.
Schema: {components:[{name, rating:green|amber|red, evidence_or_gap}], arrows:[{from, to, assumption, rating}], strong_signals:[string], weak_links:[string], missing:[string]}
FWB-05
Cell2 · Extract
Framework Builders · Logic Model · from URL

Audit a Logic Model from a URL

strongweakmissing
STEP 1 TASK: From the content at {url}, reconstruct the Logic Model: Inputs, Activities, Outputs, Short-term and Long-term Outcomes, Impact. STEP 2 CONTEXT: Page content only; never invent. STEP 3 OUTPUT: Grade each column GREEN strong / AMBER weak / RED missing, and flag any activity with no linked outcome. Give three lists: strong signals, weak boxes, missing boxes. STEP 4 FOLLOW-UP: name the one indicator that would turn the weakest box GREEN.
Schema: {columns:[{name, rating:green|amber|red, evidence_or_gap}], orphan_activities:[string], strong_signals:[string], weak:[string], missing:[string]}
FWB-06
Cell2 · Extract
Framework Builders · Logframe · from URL

Audit a Logframe from a URL

strongweakmissing
STEP 1 TASK: From the content at {url}, build the 4x4 Logframe - rows Goal, Purpose, Outputs, Activities; columns Narrative, Indicators, Means of verification, Assumptions. STEP 2 CONTEXT: Page content only; never invent. STEP 3 OUTPUT: Colour every cell GREEN strong / AMBER weak (e.g. indicator not SMART, assumption that is really a risk) / RED missing or empty. Give three lists: strong signals, weak cells, missing cells. STEP 4 FOLLOW-UP: rewrite the weakest indicator into SMART form.
Schema: {matrix:[{level, narrative_rating, indicators_rating, mov_rating, assumptions_rating}], strong_signals:[string], weak_cells:[string], missing_cells:[string]}
FWB-07
Cell2 · Extract
Framework Builders · Results Framework · from URL

Audit a Results Framework from a URL

strongweakmissing
STEP 1 TASK: From the content at {url}, reconstruct the Results Framework: Strategic Objective, Intermediate Results, Sub-IRs, with indicators. STEP 2 CONTEXT: Page content only; never invent. STEP 3 OUTPUT: Grade each result and indicator GREEN strong / AMBER weak (e.g. no baseline or target) / RED missing, and flag results that do not ladder up to the objective. Give three lists: strong signals, weak results, missing results or indicators. STEP 4 FOLLOW-UP: propose a baseline source for the weakest indicator.
Schema: {strategic_objective:{rating}, intermediate_results:[{name, rating, indicators:[{name, rating}]}], unlinked:[string], strong_signals:[string], weak:[string], missing:[string]}
FWB-08

Bring one real cycle. See it run as one record.

These prompts run inside Sopact Sense on one persistent record per stakeholder — deterministic scores, required citations, every report a view. Walk through your own application round, cohort or portfolio quarter in 60 minutes.