Creating an online survey takes less time than most people expect. Creating one that produces answers you can trust and act on takes a little more planning. This step-by-step guide covers the whole process: setting a goal, choosing who to ask, writing clear questions, picking answer formats, adding logic, testing, sharing, and analyzing the results. Each step includes concrete examples you can adapt.

Step 1: Write down the decision the survey will inform

Start with the decision, not the questions. A useful format:

"We will use this survey to decide [decision]. To make that decision, we need to know [2–4 things]."

Illustrative example: "We will use this survey to decide which of two onboarding flows to keep. To make that decision, we need to know how easy new users found setup, where they got stuck, and whether they'd recommend the product."

Every question you write later should map to one of those "things we need to know." If a question doesn't, it's a candidate to cut.

Step 2: Decide who you'll ask and how many responses you need

Define your respondents as specifically as you can: current customers who signed up in the past 30 days, employees in the operations team, US adults aged 25–54 who shop online for groceries, and so on.

Then decide where they'll come from:

  • Your own contacts (customer email list, users, employees): best for customer and employee feedback.
  • A research panel: best when you need people you don't already know, such as a specific US consumer group.
  • A link on your website, in your app, or in a community: best for in-context feedback or niche groups.

Next, estimate how many completed responses you need. A rough guide for a simple random sample: about 400 completes gives a margin of error of roughly ±5 percentage points, and about 1,000 completes gives roughly ±3. AAPOR notes that improvements shrink as samples get larger and that subgroups have larger margins than the total. If you'll compare groups, each group needs enough responses on its own. Use the to work out your number.