OrderSurvey
← All articles

Attribution

Marketing Attribution Surveys: Build a Useful Channel Report

A marketing attribution survey asks buyers how they discovered your store or what influenced their purchase. Its most useful output is a report of what responding customers remember, alongside the order values and acquisition reports you already have.

You can use that report to investigate creator mentions, publication discovery, recommendations and other sources that deserve a closer look. It does not establish which channel caused a sale, and it does not calculate profit by itself.

This guide shows how to build that report with OrderSurvey's CSV export and a separate Shopify order export. The worked example is illustrative, not customer data. Updated October 25, 2026.

1. Decide which question your report answers

First discovery and final purchase influence are different questions:

Reporting question Survey wording Useful follow-up
Where do new buyers first find us? How did you first hear about us? Which creator, podcast or publication?
What prompted this purchase? What most influenced your decision to buy today? What about that helped you decide?

For acquisition research, start with first discovery and the First order only audience. Keep the same question and options during the reporting period. A returning buyer's original discovery can be much older than the spend you are reviewing.

Use a small set of recognizable options, plus Other and I don't remember. If paid versus organic social matters, ask a follow-up; an answer of “Instagram” alone cannot distinguish an ad, a creator's post or a friend's recommendation. See the discovery question and answer-options guide.

OrderSurvey supports conditional follow-ups. Ask for a creator or publication name only when that answer is relevant. Those names can help your team investigate a source; a name in a survey is not proof of incremental sales.

2. Launch the survey and verify both placements

Create and enable the survey in OrderSurvey, then add and save the block separately on Shopify's Thank you and Order status pages. Saving a survey does not publish either Shopify placement automatically.

Check an eligible order, submit an answer, and confirm that it appears in Responses. Test the Order status placement with a different eligible order whose survey is still unanswered, so a completed survey does not hide the question you are trying to check. The Thank you setup walkthrough covers the publishing steps.

Use the same audience definition when comparing periods. Changing the first-order rule, question wording or block placement changes who can contribute to the report.

3. Export the fields the app actually provides

In OrderSurvey, open Responses, select the survey and date filter, then choose Export CSV. CSV export is a Unlimited feature.

The Responses export contains:

  • Date — when the response was submitted.
  • Order ID.
  • Question, Answer and Other Text.
  • Location — the survey surface.
  • Tags and Customer Tag Status.

There is a row for each answered question. A three-question response can therefore produce three rows for the same order. The export does not include order revenue, refunds, ad spend, customer lifetime value or an automatically calculated channel ROI.

For a discovery report, keep the selected survey's discovery question as the main answer. Keep follow-up answers in separate columns or a separate detail table. Confirm that your analysis has one discovery answer per order; investigate duplicate or conflicting answers before assigning an order's value.

4. Match orders without multiplying their value

Export the relevant orders from Shopify's Orders page. Shopify documents an Id column for the order identifier and a separate Name column for the displayed order number. Orders with multiple products can occupy several rows. See Shopify's order export instructions and column definitions.

Build one row per order in your analysis:

  1. Choose the order cohort. For example, first orders placed during a particular month. A response submitted this month on an Order status page may belong to an older order; the survey's Date field is not the purchase date.
  2. Match identifiers as text. Compare OrderSurvey's Order ID with Shopify's Id, not the displayed number such as #1042. If one export uses gid://shopify/Order/123 and the other uses 123, normalize the prefix and spot-check several known orders. Leave missing or unmatched IDs unresolved.
  3. Keep one order-level amount. Resolve Shopify's extra line-item rows before joining the order table to the discovery-answer table. Summing an order's value for every question or product would inflate the result.
  4. Define the amount. An initial check might use Total minus Refunded Amount. Label that choice: it can still include shipping and tax, and it is not automatically Shopify's net-sales metric or profit. Keep currencies separate unless you apply a documented conversion method.
  5. Reconcile the join. Record matched orders, unmatched responses, duplicate IDs and excluded orders. Compare several matched amounts with Shopify before aggregating.

A spreadsheet lookup or a database join can do the matching. OrderSurvey does not perform this revenue join automatically. Keep the source files and your matching rules so another person can reproduce the result.

5. Compare answer share with matched order value

Both counts and values are useful. Counts describe the mix of responding buyers. Values describe the order-value mix within that same matched sample. A few expensive orders can move the second measure substantially.

Illustrative example: 100 unique orders have one discovery answer each, and all 100 match to an order value. The values below use one consistent definition and sum to $12,000. These are invented numbers for the calculation, not OrderSurvey customer results.

Discovery answer Matched orders Answer share Matched order value Value share
Google search 30 30% $2,400 20%
Social media ad 25 25% $3,000 25%
Creator or podcast 20 20% $3,600 30%
Friend or family 15 15% $1,800 15%
I don't remember 10 10% $1,200 10%
Total 100 100% $12,000 100%

For the creator-or-podcast row:

  • Answer share is 20 / 100 = 20%.
  • Matched order-value share is $3,600 / $12,000 = 30%.

That difference is a reason to examine the named creators, order mix and consistency over time. It does not establish that creator spending is more profitable or that those orders would disappear without it.

Keep “I don't remember” visible. Dropping it silently changes every other percentage. Also report unmatched responses separately; do not give them a zero-dollar value or extrapolate the matched sample to all buyers without examining who is missing.

6. Use platform comparisons to choose the next investigation

Place survey findings beside your acquisition reports, with the question, audience, dates and denominators visible. Differences can reflect what customers remember, which customers answer, the definition of a channel, or different attribution rules and reporting windows.

For example, a buyer might remember a creator who introduced the brand and later click a search ad to purchase. A first-discovery answer and a conversion report can describe different parts of that journey. A gap alone does not prove that a platform over-claimed the sale.

For creator or publication research, review the follow-up names and ask whether repeated mentions justify a conversation or a measured experiment. For paid-channel decisions, use a suitable experiment and your normal business reporting to assess incremental performance. Avoid changing budgets solely because one small survey sample disagrees with a dashboard.

Revenue, ROAS and ROI are different measures

Revenue divided by advertising spend is a ROAS-style ratio. ROI considers profit relative to a defined cost basis, including relevant costs beyond advertising. Google explains the distinction in its ROAS guidance and ROI definition.

Dividing the value of orders from survey respondents by an entire channel's ad budget mixes a partial, self-selected sample with the full spend. It is not a verified whole-channel ROAS figure. Survey answers also do not establish the incremental revenue needed for a causal ROI claim.

A useful monthly report therefore contains the survey question, eligible audience, unique answering orders, matched and unmatched counts, the definition of order value, unknown answers, and any questionnaire changes. Keep the calculations reproducible and use the findings to decide what to investigate next.

Start with one question and a reporting need

OrderSurvey's Free plan includes 100 responses per rolling 30 days, conditional follow-ups and first/repeat-order targeting. Unlimited is $24 USD/month and includes unlimited responses, CSV export, advanced analytics and webhook alerts. The external order-value join described here remains a separate reporting step on either plan.

Install OrderSurvey from the Shopify App Store, choose one discovery question, and verify both page placements. If you would like help with setup or deciding which question to ask, book a personal walkthrough.

When the introduction happened offline

For a host-read ad, reconcile podcast mentions with promo-code orders before pricing the next spot. For a postcard campaign, the direct-mail holdout worksheet shows how to estimate incremental orders and use survey recall to improve the next mailing.

Frequently asked questions

Can a marketing attribution survey calculate channel ROI?

Survey answers describe what responding buyers remember. You can match them to order values, but that does not establish which sales a channel caused or its profit. ROI also requires a defined cost basis; survey revenue share alone is not ROI.

Does OrderSurvey export order revenue?

No. The Responses CSV includes the order ID and individual question answers, but not order totals, refunds or advertising spend. CSV export is included in Unlimited at $24 USD/month. You can combine it with a separate Shopify order export.

Why are there several CSV rows for one order?

The OrderSurvey Responses export has a row for each answered question. Shopify order exports can also have several line-item rows per order. Choose one discovery answer per order and one order-level value before calculating totals.

Run your first post-purchase survey

Ask how customers found you or collect feedback on Shopify's Thank you and Order status pages. One $24 USD/month plan includes unlimited use and every feature. After installing, add the survey block to each page in Shopify's editor.

Install OrderSurvey

Want help getting started? Book a 20-minute setup call.