Program design and impact measurement

Program design: build with the people you serve

Design programs with the people they are for, write a simple theory of change, pilot small, learn fast, and grow only what works.

This guide is for anyone starting a new program, or rethinking one that isn't working as well as hoped. Maybe you have seen a need in your community and want to help. Maybe a funder has asked you to "design a program." After reading, you will know how to design with the people you serve rather than for them, write a simple theory of change, test your idea with a small pilot, and decide what to do next.

Start with the need, not the solution

Many programs begin with a solution someone loves: "Let's start a coding class," "Let's hand out backpacks." Sometimes that works. Often it misses what people actually need.

Start with questions instead:

  • What problem are we trying to help with?
  • Who experiences it most?
  • What do they say would help?
  • What already exists nearby? Who else is working on this?
  • What can we realistically offer, with the people and money we have?

If another group already does this well, the best program might be a partnership or a referral, not a new service. That is a good outcome, not a failure.

Design with people, not for them

The people you hope to serve are the experts on their own lives. Involving them from the start leads to programs people actually use. The CDC's evaluation framework names "engage collaboratively" as one of its core principles for the same reason.

Ways to involve people:

  • Listen first. Hold informal conversations in places people already go: community centers, faith spaces, schools, laundromats.
  • Ask open questions. "What makes this hard for you?" works better than "Would you use a program that...?"
  • Invite a few people to help shape the design, and pay or thank them for their time and expertise where you can.
  • Test early ideas with a handful of people before you build anything.
  • Make it easy to take part: right time of day, right place, childcare, transportation, language, accessibility.

Write a simple theory of change

A theory of change is a short explanation of how and why your program should lead to the change you want. It connects what you do with what you hope will happen, and spells out the assumptions in between.

A simple way to write one:

If we [do these activities] for [these people], then [this short-term change] will happen, because [why you believe it]. Over time, this will lead to [the long-term change].

Hypothetical example: "If we offer weekly conversation groups for newly arrived adults learning English, then they will feel more confident speaking in daily situations, because regular, low-pressure practice builds confidence. Over time, this will help them use local services, find work, and feel part of the community."

Now look at your assumptions, the "because" part and anything else that must be true. Are adults able to attend weekly? Is confidence really the barrier? Each assumption is something to test.

Once you have a theory of change, you can turn it into a one-page logic model, which the CDC describes as a picture of the connection between your activities and your intended outcomes. See our measuring impact guide for how to draw one.

Pilot small

A pilot is a small, time-limited test of your program. It lets you learn cheaply before you commit.

Good pilots are:

  • Small: a few participants, one location, a few weeks or months
  • Clear about what you want to learn: "Will people come on weekday evenings?" "Is one session a week enough?"
  • Simple to run: use what you have; don't buy equipment you may not need
  • Honest: you are allowed to discover that something doesn't work

Before you start, write down:

  1. What you will do
  2. Who it is for, and how many
  3. How long it will run
  4. What you want to learn
  5. How you will know (attendance, a short survey, conversations)
  6. When you will decide what to do next

Learn and adjust

During and after the pilot, collect feedback and look at what happened:

  • Who came? Who didn't, and why?
  • What did people value most? What did they ignore?
  • What was harder than expected for volunteers or staff?
  • What did it really cost, in money and time?
  • Are there early signs of the change you hoped for?

Then decide:

  • Keep going as it is
  • Change something and test again
  • Grow it carefully
  • Stop it, and share what you learned

Stopping a program that isn't working frees up time and money for something that will. It is a sign of good leadership.

Growing what works

If the pilot works, grow step by step:

  • Write down how the program runs, so it doesn't depend on one person
  • Recruit and train volunteers using clear role descriptions
  • Set up simple measurement from the start
  • Keep listening to participants as the program grows

Growth can change a program's character. Keep asking the people you serve whether it still works for them.

Your program design checklist

The best programs are rarely designed perfectly on paper. They are shaped, tested and improved, together with the people they are meant to serve.

If you want to test your program idea with someone experienced, ask a member charity for help through the Exchange.

Related

Sources

Checked on October 14, 2026. Rules and fees change, so follow the links for the current version.

  1. CDC: Program Evaluation Framework
  2. CDC: Evaluation Framework Action Guide, Step 2: Describe the Program