Skip to content

JSON Prompting

INTRODUCTION

Have you ever noticed how, with normal prompting, the AI sometimes just doesn’t quite get what you mean? You ask for “summarize this email” and instead of a neat one-liner, you get three paragraphs and a few random “insights” you never asked for. That’s because free-text prompts leave room for interpretation and that’s exactly where vague outputs, misfires, and hallucinations slip in.

JSON prompting (JavaScript Object Notation prompting) is a new approach that allows you to structure your prompts. Just like you might organize a grocery list into categories such as meat, fish, or vegetables, you can structure your AI tasks in the same way. Instead of writing free text, you format instructions, inputs, and desired outputs as JSON objects.

Why does this work so well? Because AI models have seen mountains of JSON data while training (websites, apps, APIs) you name it. JSON is like their native language. By formatting your prompt as a JSON object, you’re basically telling the AI: “Here’s the exact structure I want. Just fill in the blanks.

SOME KEY BENEFITS

So instead of reinventing the wheel with every new prompt, you can build a library of JSON templates: one for emails, one for video scripts, one for summaries… and reuse them whenever you like.

What is JSON?

JSON (JavaScript Object Notation) is just a way to organize information so that both humans and computers can read it. Think of it like a shopping list where every item has a label and a value.

Example shopping list in JSON:

{
  "fruit": "apple",
  "drink": "water",
  "snack": "cookies"
}

Here’s how to read it:

  • “fruit”: “apple”

    → the label is fruit, the value is apple.

  • “drink”: “water”

    → the label is drink, the value is water.

  • “snack”: “cookies”

    → the label is snack, the value is cookies.

The curly brackets { } mean: everything inside here belongs together.

When we use JSON for AI prompting, we do the same thing:

  • We give the AI a label (the key).
  • Then we tell it the value (the instruction, input, or setting).

 

Easy way to remember
  • { } = a box of information (object).
  • : = “is” or “equals.”
  • "key": "value" = a label and its content.
  • , = separates one item from the next.
  • [ ] → an array (list) of multiple values.

A JSON prompt is built like a little recipe card: every field has a clear role, and together they tell the AI exactly what to cook up. At its simplest, you’ll usually have three key ingredients:

  • instruction → what you want the AI to do (“summarize,” “translate,” “analyze sentiment”).
  • input → the text, data, or context the AI should work with.
  • output_format → how you want the result delivered (plain text, list, JSON object, etc.).
 
For example:
{
  "instruction": "Summarize the following text in one sentence.",
  "input": "Artificial Intelligence (AI) has rapidly become a key driver of innovation across multiple industries. In healthcare, it supports doctors with faster diagnoses and personalized treatments. In education, AI enables adaptive learning systems that respond to each student’s needs. Meanwhile, in creative industries, AI tools are opening new frontiers in music, film, and design. While AI brings incredible opportunities, it also raises questions about ethics, privacy, and the future of work. Balancing progress with responsibility will be one of the greatest challenges in the coming decade.",
  "output_format": "plain text"
}
OUTPUT:
AI is driving innovation across industries, offering opportunities in healthcare, education, and creativity while raising ethical and societal challenges.

This structure makes your prompt easy to read, both for you and the AI. You can expand it with extra fields like "tone", "audience", or "length", but the principle stays the same: a JSON prompt is just a structured way to tell the AI what to do, with no room for guesswork.

For example:
{
  "instruction": "Summarize the following text in one sentence and extract three key keywords.",
  "input": "Artificial Intelligence (AI) has rapidly become a key driver of innovation across multiple industries. In healthcare, it supports doctors with faster diagnoses and personalized treatments. In education, AI enables adaptive learning systems that respond to each student’s needs. Meanwhile, in creative industries, AI tools are opening new frontiers in music, film, and design. While AI brings incredible opportunities, it also raises questions about ethics, privacy, and the future of work. Balancing progress with responsibility will be one of the greatest challenges in the coming decade.",
  "output_format": {
    "summary": "plain text, one sentence",
    "keywords": "list of three words"
  },
  "tone": "professional",
  "audience": "business leaders",
  "length": "short"
}
OUTPUT:
{
  "summary": "AI is reshaping industries with opportunities in healthcare, education, and creativity, while demanding responsible leadership on ethics and work.",
  "keywords": ["innovation", "ethics", "industries"]
}

The reason why "tone", "audience", and "length" are placed outside of the "output_format" { } is because they describe the whole answer, not just the technical format of the output.

Let’s break it down:
  • "output_format": { ... }

    This section is a mini-box (object) that only deals with the structure of the output.

    For example:

    • "summary" should be one sentence.
    • "keywords" should be a list.
  • "tone", "audience", "length"

    These are extra global instructions about how the AI should write. They don’t belong only to the format, they affect the entire response.

    • "tone": "professional" → tells the AI to keep the language formal/professional.
    • "audience": "business leaders" → tells the AI who it’s writing for.
    • "length": "short" → tells the AI how long the summary should be. </aside>

✅ Do’s
  • Use clear keys like "instruction", "input", "output_format".
  • Keep your JSON minimal and clean (only include what’s needed).
  • Be explicit"plain text, one sentence" is better than just "text".
  • Create templates you can reuse for different tasks.

Test your JSON with a validator to catch missing commas or quotes.

👉 Online Validators

  • ❌ Don’t forget quotes " " around keys and text values.
  • ❌ Don’t leave out commas , between fields.
  • ❌ Don’t mix up curly braces { } (objects) and square brackets [ ] (lists).
  • ❌ Don’t overload your prompt with too many instructions at once.
  • ❌ Don’t assume the AI will guess your structure, always specify it clearly.

One of the biggest advantages of JSON prompting is that you can build reusable templates. Instead of starting from scratch every time, you simply grab a template, fill in the blanks, and you’re ready to go.

Below, we’ll show a few templates designed for specific tools and workflows where JSON can really shine. Think of them as starter packs for different kinds of tasks: a template for emails, one for AI video generation, … Each template follows the same structure (instruction, input, output_format) but can be customized with extra fields like tone, audience, or style.

To make it even easier, we also link to a few ready-made GPTs created by other users. These GPTs guide you in a chat-like way: instead of writing a full JSON prompt yourself, you answer a few simple questions, and the GPT builds the JSON for you. This way you can experiment quickly, and once you find a workflow you like, you can save the JSON as your own reusable template.

JSON templates turn prompting into a plug-and-play experience: you pick the right structure, drop in your content, and the AI knows exactly what you want—without confusion or wasted tokens.

Video (veo3)

{
“shot”: {
“composition”: “wide shot”,
“lens”: “standard”,
“camera_motion”: “slow tracking shot from behind”
},
“subject”: {
“description”: “A 37-year-old woman with blond hair”,
“wardrobe”: “futuristic astronaut suit, sleek and silver with luminous blue details”
},
“scene”: {
“location”: “the surface of the moon”,
“time_of_day”: “lunar day”,
“environment”: “barren, cratered lunar terrain with Earth visible in the sky”
},
“visual_details”: {
“action”: “She walks slowly from left to right in low gravity toward a flag planted in the moon dust”,
“props”: “A Belgian flag gently waving, despite the lack of atmosphere”
},
“cinematography”: {
“lighting”: “harsh directional sunlight casting long shadows”,
“tone”: “epic, quiet, melancholic, and futuristic”
},
“audio”: {
“ambient”: “complete silence, vacuum of space”,
“dialogue”: [
{
“character”: “Woman”,
“dialogue”: “We made it.”,
“voice”: “soft, female”,
“style”: “reflective”,
“duration”: “2s”,
“emphasis”: “gentle”,
“timestamp”:”7 sec”
}
]
},
“color_palette”: “desaturated grays and whites with blue suit accents and the red-yellow-black of the Belgian flag”,
“settings”: {
“transitions”: “none”
},
“action_sequence”: {
“0s”: “Camera opens with a wide shot of the moon landscape.”,
“2s”: “The woman enters frame from the left, walking slowly in moon dust.”,
“5s”: “She approaches the Belgian flag in the distance.The camera slowly follows her from behind, emphasizing isolation and scale.”,
“7s”: “she stops a few meters from the flag. She softly says, ‘We made it’.”
}
}

GPT’s for VEO 3 prompts in JSON

There are lots of GPTs for VEO3 prompts on ChatGPT, so you can start from there. Don’t forget to read your prompt carefully.