Skip to Content
CoursesResearch & Web Scraping07 Structuring the output

Structuring the Output

Outcome: research answers split into a filterable verdict, a quotable evidence field, and a validation column — then wired into your fit score.

Surface
Sync GTM app
Level
Beginner
Uses
AI research agent · formula columns
Credits
~1 per row
Prerequisite
Lesson 06's validated prompt

Why a paragraph is a dead end

A research answer written as prose can be read by a human. It cannot be filtered, sorted, counted, scored, or used as a merge field. Everything downstream in your pipeline needs a value.

The fix is not to ask for less. It is to ask for two things in two columns.


Verdict plus evidence

The verdict column

Closed value set. B2B, B2C, Both, Unknown. This is what filters and scores read.

The evidence column

One sentence, quoting or closely paraphrasing what the source actually said. This is what your copy quotes and what you check when a verdict looks wrong.

Ask for both in one call

Two fields in one structured response costs one call, not two.

Prompt shape:

Return exactly two lines: VERDICT: <one of B2B, B2C, Both, Unknown> EVIDENCE: <one sentence, under 20 words, from the website> If you cannot determine the verdict, return VERDICT: Unknown and EVIDENCE: none.

Then split the response into two columns with a formula. Free, and it gives you a filterable field and a quotable one from a single charge.


Closed value sets

A value set must be written down and closed. If new values keep appearing, every downstream filter silently misses rows.

RuleWhy
List every allowed value in the promptThe model invents categories otherwise
Include UnknownThe abstain path from lesson 06
Include Other only if you review what lands thereOtherwise it becomes a dumping ground
Keep it under about six valuesMore than that and nobody uses the distinctions

Check for value drift after every run. A column that returned B2B last month and B2B / Enterprise this month has broken every filter that reads it, and nothing will error — the rows just quietly stop matching.


Validation columns

Three free formula columns that catch most bad output before it reaches a decision:

ColumnChecks
verdict_validIs the verdict one of the allowed values?
evidence_presentIs there evidence text when the verdict is not Unknown?
evidence_length_okBetween 5 and 30 words?

Filter on all three before the research feeds anything. A verdict without evidence is a guess that got past the abstain instruction.


Feeding the score

Structured research is the sharpest scoring input you have, because it is the one your competitors’ lists do not contain.

fit_score = (size_band in ["51-200","201-1000"] ? 3 : 0) + (sells_to = "B2B" ? 3 : 0) + (uses_competitor = "Yes" ? 4 : 0) + (sells_to = "Unknown" ? -1 : 0)

Note the last line. An unknown is not neutral — it means you could not qualify the account, and a small penalty pushes those rows below the gate rather than letting them drift through unexamined.


Do this now

Split your prompt into verdict and evidence

Two fields, one call, explicit format.

Add the split formulas

Two columns from one response. Free.

Add the three validation columns

Verdict valid, evidence present, evidence length.

Run on 20 rows

Check every validation column passes. Fix the prompt for any that fail.

Count the distinct verdict values

If there are more than you listed, the value set is drifting.

Wire the verdict into your fit score

Including a penalty for Unknown.

Sort by score and read the extremes

Top ten and bottom ten. If they are not visibly different, the research is not adding resolution.


Check your work

  • Verdict and evidence are separate columns from one call
  • The distinct verdict values match your written value set exactly
  • Validation columns pass on every row you keep
  • The verdict feeds the score, with Unknown penalized
  • The evidence field is short enough to quote in a message

Where this breaks

Scoring on a research column you have not validated propagates the error everywhere at once. A verdict that is wrong 20% of the time produces a score that is wrong for those rows, a gate that admits and rejects the wrong accounts, and copy that references something untrue — and all of it looks like a working pipeline. Validate the column against a labelled set before it touches the score, not after.


Further automation

Once verdict and evidence are reliable, the evidence field becomes your personalization input directly — SyncGTM 101 lesson 15 builds the opening line from exactly this shape. The chain research → verdict → score → gate → evidence → copy is the whole pipeline, and it starts with getting the output shape right.


Next lesson

08 — Competitor teardown, applying everything so far to one high-value multi-source research run.

Reference for this lesson: AI agents, Research, Tables, GTM Engineering — scoring and gating.