
01 // Behind the Brief
I’m not one to follow trends. I like to wait it out a little to see if it’s worth exploring or if it has the shiny new object effect. In my effort to #PlayMoreCreateMore (my 2025 motto) I may explore behind the scenes to test out what works for me, and to see if there is an actual, real use case for it.
Enter JSON prompts.
The first time I heard about JSON prompts, AI creatives were using it to control the outcome for Veo3. It was framed as a hack to get the outcome to actually match your vision. Then I came across some AI creatives on LinkedIn who were using JSON prompts for image generation in ChatGPT. This was one of those times where I had to try it. Was it just the recent hype or did it actually work?
The selling point for this style prompt was creating a set of consistent images. That was the dream! At first, I was excited about the outcome, but the more ideas I tried, the more I discovered some problems.
Are JSON prompts a secret hack? Maybe? But…
I’m not throwing this approach out the window because I still think it’s worth exploring, but I did notice some areas worth searching for a solution.
Problem #1
In this test, I asked for a brutalist cement Eiffel Tower with a gradient applied only to the feet. The first image spread the gradient across both the feet and the floor. On top of that, the tower’s style shifted between outputs, even though I used the exact same prompt.

Problem #2
The first time I explored JSON prompts the images were consistent. This time around, the outputs for the same prompt structure kept going rogue. I was only changing the subject, yet the colors and details changed. Maybe I missed something, or maybe I can blame GPT 5?!

I tend to dream big and it didn’t meet the vision I had. I’m going back to the drawing board to explore where I could have messed up, and better understand what verbiage works best for this structure. If you test it out, let me know how it turns out!
📝 Another note: Part of what can be classified as a AI trend nowadays is creating stuff that doesn’t have an actual use case. So I’m currently exploring ways to fit this JSON prompting into my workflow. I’ll share more about my learnings in a later post. Stay tuned!
02 // Inside the Build
This part will be quick, because I want you to start playing!
THE PROCESS
Copy & Paste the Prompt into GPT
Start with the JSON prompt I left for you in the Prompt & Play section, and paste it into ChatGPT. You’ll notice there are highlighted parts of the prompt, these are the sections you’ll need to update with your preferred object and overall style.
💡Tip: Plop the prompt into GPT and above it describe your idea and ask GPT to adjust the prompt accordingly. This helps get the ball moving a bit faster.Build a Set or Explore
In my exploration, I first tested out the exact prompt I found. Then I changed only the subject to see the results.
💡Tip: If you’re exploring different styles, start a new chat thread for each concept. It helps avoid the generation from going rogue!
03 // Browseworthy
Tools to Check Out 🛠️
ImageJSON: Hand-picked JSON prompts
Custom GPT: JSON Prompt Creator
04 // Prompt & Play
Now it’s your turn to recreate your own version! The highlighted bits of the prompt are what you’d want to adjust to match your vision. But no pressure, change only what you’d like and just have fun with it.
JSON Prompt:
{
"style": "hyper-realistic object render",
"scene_type": "product-style studio shot",
"object": {
"type": "eiffel tower",
"material": "glass",
"surface_texture": "Iiridescent glass with light streaks of red and pink inside the glass",
"features": {},
"expression": null,
"shape": "slightly exaggerated and rounded aesthetic"
},
"environment": {
"background": "clean off-white or light neutral surface",
"material": "matte paper or seamless backdrop",
"shadows": "soft-edged natural drop shadow under the object",
"scale": "tabletop studio scale"
},
"lighting": {
"type": "studio softbox lighting",
"intensity": "soft and diffused",
"direction": "angled from upper left",
"accent_colors": [],
"reflections": false,
"refractions": false,
"bloom": false
},
"post_processing": {
"glow": false,
"bloom": false,
"high_contrast": false,
"sharp_details": true,
"depth": "subtle depth with crisp focus on object, soft blur in background"
},
"camera": {
"angle": "slight downward front-facing view",
"focus": "entire object",
"depth_of_field": "moderate with gently blurred background",
"framing": "centered composition with tight crop"
}
}