We're in early access — onboarding jewelry brands one at a time

← Back to Research

Published

December 24, 2025

Category

Prompt Engineering

Author

Formel Studio Research

From 0% to 100%: How We Achieved Reliable AI Camera Angle Control for Jewelry Photography

A practical case study showing how synonym stacking and hierarchical prompts took our AI-generated jewelry photography from 0% accuracy to 100% across five camera angles. Includes working prompts.

From 0% to 100%: How We Achieved Reliable AI Camera Angle Control for Jewelry Photography

TL;DR: We tested whether AI can reliably produce specific camera angles for jewelry. Initial results ranged from 0% to 100% depending on the angle. After 6 rounds of refinement, we achieved 100% accuracy on all 5 angles using two key techniques: synonym stacking (5-7 keywords per concept) and hierarchical prompt ordering (shot_type first).


The Challenge

Jewelry photography needs precise camera angles. A hero shot at 45° is completely different from a bird’s eye at 90°. If AI can’t reliably produce the angle you want, it’s useless for production.

We asked: Can we prompt AI models to consistently hit specific camera angles?

This isn’t about image quality. It’s about control.


What We Tested

Five standard jewelry photography angles on Google’s Nano Banana model:

AngleWhat It Shows
Hero 3/4Standing ring, camera at 45°
Bird’s EyeRing laying flat, camera at 90° overhead
Flat LayRing laying flat, camera at 70°
Circle ViewStanding ring at eye level, see into the ring hole
Line ViewStanding ring at eye level, band appears as thin line

Round 1: The Problem

We started with intuitive prompts. Results were all over the place.

AngleSuccess
Hero 3/4100%
Flat Lay67%
Bird’s Eye20%
Side Profile17%
Front View0%

What Worked

Hero shots worked immediately. The model understood “three-quarter view” without issues.

AI-generated jewelry photo: Successful hero 3/4 view of gold ring demonstrating accurate camera angle control

What Failed

Front view was a disaster. We asked for the band as a thin line. We got everything else.

AI prompt failure: Requested front view but received elevated camera angle instead

AI prompt failure: Another failed front view attempt showing wrong camera angle interpretation

Key insight: The model’s “side view” and “front view” meant the opposite of what we expected. We were speaking different languages.


Rounds 2-3: Learning the Model’s Language

We swapped our terminology to match the model’s interpretation:

  • “Side view” keywords → Circle View
  • “Front view” keywords → Line View
  • Bird’s eye changed from 70° to 90° with stronger keywords

Bird’s Eye Fixed

Adding “zenith”, “directly above”, and “90 degrees” turned bird’s eye from 20% to 100%.

Bird's eye working after terminology fix

Circle and Line Still Struggling

Even with swapped terms, Circle View hit only 60% and Line View only 40%.

Circle view - sometimes correct

Circle view - sometimes wrong

Then we noticed something. Flat lay had worked from the start. Why? Its prompt used multiple similar keywords: ["flat lay", "overhead", "elevated"]. Other prompts used single terms.

Hypothesis: Multiple synonyms reinforce the concept.


Round 4: The Synonym Stacking Breakthrough

We changed from single keywords to stacks of 5-7 synonyms.

Before:

{
  "placement": "standing upright",
  "shot_type": "side view"
}

After:

{
  "placement": ["standing upright", "ring standing", "upright position", "vertical ring", "ring on edge"],
  "shot_type": ["side view", "side profile", "profile view", "profile shot"],
  "visual_result": ["circular opening visible", "looking into ring hole"]
}

Results

AngleBeforeAfter
Circle View60%80%
Line View40%100%

Line View jumped 60 points. The model finally got it.

Line view working with synonym stacking


Round 5: An Unexpected Setback

We applied synonym stacking to all prompts. Circle View dropped back to 40%.

Circle view regression - got elevated angle

Circle view regression - got line view instead

The model still confused similar angles. We needed stronger differentiation.


Round 6: The Final Fix

Two changes:

  1. Hierarchical ordering — put shot_type first (the goal)
  2. More synonyms — doubled down on struggling angles

The Winning Prompt (Circle View)

{
  "shot_type": ["side view", "side profile", "profile view", "profile shot", "lateral view", "side angle"],
  "subject": ["plain gold band ring", "simple wedding band", "gold ring"],
  "placement": ["standing upright", "ring standing", "upright position", "vertical ring", "ring on edge"],
  "camera_angle": ["eye level", "0 degrees", "straight on"],
  "visual_result": ["circular opening visible", "looking into ring hole", "see through ring", "O shape visible"],
  "style": ["product photography", "e-commerce", "jewelry photography"]
}

Final Results: 100%

AngleRound 5Round 6
Hero 3/4100%100%
Bird’s Eye100%100%
Flat Lay80%100%
Circle View40%100%
Line View100%100%

All five angles working consistently:

Final result: AI-generated hero 3/4 view showing gold ring at 45-degree camera elevation

Final result: AI-generated bird's eye view of gold ring shot from 90 degrees overhead

Final result: AI-generated flat lay view of gold ring at 70-degree camera angle

Final result: AI-generated circle view showing ring opening from eye level side profile

Final result: AI-generated line view showing ring band as thin line from eye level


Cross-Model Test

We tested the same prompts on Nano Banana Pro (4x the price). Results dropped to 84%.

AngleNano BananaNBP
Hero 3/4100%100%
Bird’s Eye100%60%
Flat Lay100%100%
Circle View100%80%
Line View100%80%

NBP failure - wrong angle

Takeaway: Prompts don’t transfer perfectly between models. You need to tune per model.


The Winning Formula

1. Put Shot Type First

Order your prompt by importance:

{
  "shot_type": [...],      // The goal
  "subject": [...],        // What you're shooting
  "placement": [...],      // Object position
  "camera_angle": [...],   // Camera position
  "visual_result": [...],  // Expected outcome
  "style": [...]           // Aesthetic
}

2. Stack Synonyms

Never use one keyword when you can use five:

BadGood
"standing upright"["standing upright", "ring standing", "upright position", "vertical ring", "ring on edge"]
"eye level"["eye level", "0 degrees", "straight on"]

3. Separate Concepts

Don’t mix object position with camera position:

  • Placement: How the ring sits (standing vs flat)
  • Camera angle: Where the camera is (eye level vs overhead)
  • Shot type: Industry name for the combination

4. Include Visual Outcomes

Tell the model what you expect to see:

"visual_result": ["circular opening visible", "looking into ring hole", "O shape visible"]

The Complete Progression

SUCCESS RATE BY ROUND
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
              R1    R3    R4    R5    R6    NBP
Hero 3/4     100%   —     —    100%  100%  100%
Bird's Eye    20%  100%   —    100%  100%   60%
Flat Lay      67%   —     —     80%  100%  100%
Circle View   17%   60%   80%   40%  100%   80%
Line View      0%   40%  100%  100%  100%   80%
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

Key Lessons

The model isn’t wrong — you are. When “side view” gives you “front view”, the model is following its training data. Learn its language.

Redundancy works. In writing, redundancy is bad. In prompts, it’s a feature. Synonym stacking reinforces concepts across the model’s training dimensions.

Structure beats prose. Structured keyword lists outperform long descriptions.

Iteration is the method. We didn’t find the formula in Round 1. We found it through 6 rounds of test → observe → refine.


Limitations

  • Single evaluator (though binary rating reduces subjectivity)
  • Two Google models only (FLUX, Ideogram may differ)
  • Rings only (necklaces/earrings may behave differently)
  • Text-to-image only (reference images may change dynamics)

Bottom Line

Can AI reliably hit specific camera angles?

Yes — after tuning. We went from 0% on some angles to 100% across all five.

The formula:

  1. Hierarchical ordering
  2. Synonym stacking (5-7 per concept)
  3. Separate placement from angle
  4. Include visual outcomes
  5. Tune per model

This isn’t prompt magic. It’s systematic experimentation to learn how the model interprets your words.


Study details: 6 rounds, 150+ images, ~$10 total cost. Models: Nano Banana, Nano Banana Pro via Replicate.



About studio formel

studio formel is an AI-powered creative platform built specifically for jewelry brands. We combine systematic research on AI generation with a flexible asset management system, helping jewelry sellers create professional images, videos, and ads at scale.

Learn more about our platform →

Apply our research to your jewelry brand

Our AI platform uses these research findings to help you create professional product images at scale.

Get early access

Topics

prompt engineering AI photography camera angles jewelry photography Imagen text-to-image e-commerce photography product photography