Free to read · no account needed

9 min · prompt

Ask for tables and JSON without breaking your workflow

Goal: Ask for tables or JSON with a frozen schema; unknown stays null—no pretty fake fills.

Best for: Briefs, matrices, checklists, light automation handoffs.

Structured output fails when you underspecify keys or allow prose wrappers. Name columns/keys. Ban extra commentary. Validate JSON before you pipe it anywhere.

Ask for structure when you will paste into a sheet or script. Give a schema, one tiny example, and what to do if a field is unknown (null/TBD—not invented).

Why beginners skip this

Asking only “make a table” with no schema lets the model invent column names—downstream parse will break. Write the fields first.

Step 1 — Table ask

Practice “table only”: use a real list you have; do not invent rows.

Return ONLY a markdown table with columns: [A | B | C].
No intro paragraph. Unknown allowed. Do not invent values.

Step 2 — JSON ask

Then JSON: freeze the schema first, paste notes in; unknown fields stay null.

Return ONLY valid JSON with keys: title (string), bullets (array of 3 strings), risks (array of 2 strings).
No markdown fences if the app wraps JSON for you—otherwise one fence.
If unknown, use null or "Unknown"—do not invent.
Example

Filled prompt

Extract meeting actions into JSON with fields: owner, task, due (YYYY-MM-DD or null), source_quote. If due unknown use null—do not invent dates. Provide one example object then parse this note: [paste].

What good output looks like

  • Goal/Format/Boundaries all present for “Get markdown tables or simple JSON you can paste i”
  • One example beats stacked IMPORTANT words
  • Version/date kept when template changes
  • Pass/fail: zero clarifying turns on live task

Step 3 — Validate

Paste JSON into a validator or JSON.parse in a scratchpad. Tables: paste into Sheets and check column counts.


Scene: Sheets without tears

The model returns ONLY the table. You paste into Sheets; columns line up. No essay wrapper to delete. Unknown cells stay empty on purpose.

Refuse pretty invalid JSON

If the model wraps JSON in commentary, send it back. Pretty-but-invalid breaks pipelines. Prefer boring valid output.

Your last reply was not valid JSON. Return ONLY the JSON object with keys [list]. No commentary.
Example

Filled prompt

From messy meeting notes, output JSON array of decisions: {decision, owner|null, due|null, quote}.
If missing → null, never invent. Return JSON only + one Unknown note.

What good output looks like

  • One example beats stacked IMPORTANT words
  • Version/date kept when template changes
  • Pass/fail: zero clarifying turns on live task
  • Goal/Format/Boundaries all present for “Get markdown tables or simple JSON you can paste i”

Save this card

Card: Want structure—give a schema; unknown stays unknown—no pretty fake values. Keep this beside the tool; read before you start.

Before you start

Keep the last failing output visible. You will repair the prompt for “Ask for tables and JSON without” against that failure—not a fresh toy ask. Guide: prompt-structured-output-json-tables. Keep the real job visible the whole time; a blank box means stop and fetch the artifact first.

How to use this week

This week for a real task write a JSON/table schema: field names + types + required; no run without the schema.

Keep it real

Run this guide’s Practice now on work you will actually ship this week—not a fictional scenario. Dated notes beat perfect theory.

Ship the practice

Close the tab only after Practice now is done on a real artifact.

Do not bookmark-only

Finish Practice now, then tick this guide on your path. Titles unread are not skills.

Close the loop

Write one line: next time I run with no schema, I refuse.

Check the unknown path

What should the model do when a field is missing—null, TBD, or ask you? Write it once in Boundaries.

Example

Filled prompt

From notes, JSON array: {decision, owner|null, due|null, quote}.
Missing → null. JSON only + Unknown note. No invented owners.
Valid JSON only; unknown → null; no trailing commentary.

What good output looks like

  • Version/date kept when template changes
  • Goal/Format/Boundaries all present for “Get markdown tables or simple JSON you can paste i”
  • Pass/fail: zero clarifying turns on live task
  • One example beats stacked IMPORTANT words

Red flag

Pretty fake values for unknowns; no schema—require unknown to stay unknown.

Pitfalls

PitfallFix
“Make a table” with no columnsName columns
Accepting commentary + JSONONLY JSON rule
Invented fields to look completeBan extra keys

Example

Filled prompt

Temptation: skip the habit for prompt-structured-output-json-tables to save five minutes.
Job still: Get markdown tables or simple JSON you can
Smallest correct pass: Done visible · checkable artifact · Unknowns [?].
Boundaries: draft only; no silent send; no invented metrics.
Return: artifact + refuse-line said aloud.

What good output looks like

  • Names the shortcut refused (specific to prompt-structured-output-json-tables)
  • Still delivers checkable output for “Ask for tables and JSON without”
  • Unknowns labeled; draft-only
  • Pass/fail: refuse-line dated (prompt-structured-output-json-tables #4)

Practice now

Null policy: define how nulls appear—never silent omit (Asia/Shanghai).

Invalid reject: feed one invalid row; model must refuse (Asia/Shanghai).

Schema freeze: freeze schema before generating rows (Asia/Shanghai).

Structured drill: one JSON/table schema; reject free prose that breaks it (Asia/Shanghai).

Thin-spot drill: rewrite the Save card with real nouns from your work (repo, doc, inbox). Generic placeholders fail the drill.

Tonight write a three-line schema (name+type+required) for real material, then generate JSON/table.

Habit stamp: after one live pass, write the refuse line you actually used on the Save card and date it (Asia/Shanghai).

Today card (copy) — prompt-structured-output-json-tables: 1. Artifact I will produce: ___ 2. Pass/fail check: ___ 3. Refuse-line if tempted to skip verify/send: ___ (date: Asia/Shanghai) 4. One never-do from this guide: ___

Extra pass: do the card on a real file today—reading alone does not count.

One sentence takeaway

Field names + types + required; no run without the schema.

Next

Claim–evidence matrix · GFB · Rubrics

← Back to home · Learn · Tools · Compare · Start