On November 4, OpenAI released its next-generation image model, Images 2.6. With Image 2.6, a text request in chat can directly produce a looping GIF. For creators making character reaction GIFs, the practical question is whether natural-language instructions can produce readable emotions, a consistent character, and motion that works on repeat.
How well can Image 2.6 turn one character image into six animated expressions? Let's look at the results with Arcloop. Using six original GIFs and frame-by-frame inspection, we examine the prompts, the outputs, and possible improvements.
Image 2.6 is also available on Arcloop. To continue creating in Arcloop, open the Arcloop workspace with your character reference and action description ready. The GIFs and measurements below come from our ChatGPT tests.
1. Choose the Character You Want to Animate
In ChatGPT accounts with GIF generation enabled, you can upload a still image and describe how it should move. You do not need to learn a timeline first, but you should specify what can change and what should stay the same.
Our reference shows a cat-eared character with short silver-gray hair, golden eyes, a blue-and-orange apron, a bell and orange ribbon in her hair, and a tail on the right side of the image. These features can serve as the details to preserve, while facial expressions, gestures, and tail movements can change.
This distinction makes checking the result more concrete. Raising a hand toward the face is a requested movement; losing the bell or changing the apron color may undermine character consistency. A fixed camera and composition are also constraints worth trying. They help focus the review on motion, but cannot guarantee that deformation will disappear. Check consistency at two levels: whether the character deforms within each GIF, and whether all six still look like the same character.
If you have not documented the details that should stay fixed, start with Build the Character Sheet Before You Write a Prompt. Define those visual anchors before planning changes in motion.

2. Writing Emotion Prompts and Evaluating the Results
Describe an emotion through visible actions so you have something specific to evaluate. Our goal was six separate GIFs. Here are the original prompts, translated into English:
- Shyly hiding her face: ears tilted back, both hands covering half her face.
- Angry hissing: cheeks puffed out, cat ears upright, with a mildly threatening gesture.
- A dismissive, tsundere-style huff: arms crossed, head turned aside, tail swishing gently.
- A gift for you: offering a small heart with both hands, eyes lighting up.
- Crying in distress: tears welling up, mouth turned down, shoulders trembling slightly.
- A smug wink: both hands on her hips, winking one eye once.
Shyly hiding her face: ears tilted back, both hands covering half her face. In the result, both hands gradually rise toward the mouth, the ears lower, and the cheeks blush. The gesture and expression make the shyness easy to read. When hands cover the face, also check the boundaries between the fingers and cheeks.

Angry hissing: cheeks puffed out, cat ears upright, with a mildly threatening gesture. The result expresses anger mainly through a frown, an open mouth, and raised hands in a threatening pose. Puffed cheeks are less prominent. The overall emotion reads clearly, but that does not mean every requested detail was followed precisely. GIFs have no sound, so the hiss must come through visually.

A dismissive, tsundere-style huff: arms crossed, head turned aside, tail swishing gently. Crossed arms, a turned head, and closed eyes communicate the attitude more clearly than a head turn alone. The output also adds a small puff-of-breath symbol. If you want a clean character sticker, you can ask to exclude such extra symbols in a follow-up request.

A gift for you: offering a small heart with both hands, eyes lighting up. A pink heart appears in the palms and both hands extend forward, making the intended action clear. At the emotional peak, however, the character laughs with closed eyes; brightening eyes are not the main feature. The heart-offering action is there, while the eye performance differs from the request.

Crying in distress: tears welling up, mouth turned down, shoulders trembling slightly. Watery eyes, drooping ears, and mouth changes communicate distress, with motion lines near the shoulders. This highlights the need to match the emotion label to the requested action. If you expect exaggerated sobbing, asking only for tears to well up may be insufficient; describe the intensity more clearly.

A smug wink: both hands on her hips, winking one eye once. Both the hands-on-hips pose and the closing of one eye are visible. The smile and stance convey smugness. This simple action is also easier to check against each part of the request.

These results suggest that concrete gestures help distinguish emotions, while the model may still interpret facial performance in its own way. For follow-up requests, try specifying the emotion, facial change, one main action, and ending pose. Focus each revision on one mismatch rather than turning a short reaction into a complex plot.
For more ways to describe eyebrows, eyes, mouth shapes, and head position, see our anime facial expression prompt guide, then choose the details that suit your character reference.
3. Making Motion Transitions Feel More Natural
Complete the return to the starting pose before adjusting playback speed. Frame inspection shows that the original heart-offering GIF begins with hands near the chest and no heart, but ends with the hands still extended, holding the heart. The wink ends with hands on hips, while its first frame has both hands raised beside the shoulders. Both files repeat, but their starting and ending states differ. Check for a jump when playback restarts.
For the heart-offering action, you could try adding this instruction:
Begin with both hands holding a small heart at chest level. Slowly offer it forward, pause with a smile, then bring it back along the same path. End with the same hand pose, heart position, and expression as the beginning. Keep the camera and background fixed.
Having the prop present from the beginning removes one appearance-and-disappearance transition to handle. For the wink, you could keep the character's hands on her hips throughout, making the loop just a small eye-closing and eye-opening action.
If the pacing alone is wrong, you can adjust the playback speed of the GIF generated in ChatGPT. Speed changes do not automatically repair missing motion, deformed hands, or mismatched starting and ending states. Simplify the action first, then inspect the return movement.
4. How Long Can a GIF Be?
Using the heart-offering example, we generated a GIF with a 20-second playback cycle, but it contained only 16 frames, each held for 1.25 seconds. We recommend evaluating playback duration separately from motion continuity. Reaching 20 seconds in this test does not establish the maximum supported duration.
The original six GIFs had cycles of about 1.36–1.52 seconds, with eight frames each and infinite looping enabled. To explore longer cycles, we uploaded the same character reference again in ChatGPT on November 6–7, 2026, and requested heart-offering GIFs lasting 2, 10, and 20 seconds. We used the loop arrangement described above: hold the heart at the chest, offer it forward, pause with a smile, then return it to the chest. We requested a front-facing, waist-up view, a fixed camera, a white background, and no text.
We downloaded the GIFs returned by the generation interface directly, without local assembly, frame interpolation, or speed adjustments. The cycle durations below are the sums of the individual frame delays stored in each file, rather than timings taken while watching an infinitely repeating animation.
| Requested duration | Actual cycle duration | Frames | Delay per frame | Output size |
|---|---|---|---|---|
| 2 seconds | 2.00 seconds | 8 | 250 ms | 439×439 |
| 10 seconds | 9.92 seconds | 16 | 620 ms | 309×309 |
| 20 seconds | 20.00 seconds | 16 | 1250 ms | 309×309 |
All three files loop infinitely, with one hold, offer, and return sequence per cycle. The 10-second request came out 0.08 seconds short. We preserve that difference rather than treating the requested duration as a measurement.
The 2-second version has compact pacing and communicates the action stages clearly. In the first two frames, the heart is held at the chest; frames 3–5 show the offering and smile; frames 6–8 show the return. Each image stays on screen for a quarter of a second, so the pose changes remain visible. The first and last hand poses are similar, but the images are not identical. We cannot call it a seamless loop.

The 10-second version adds transition images, but updates more slowly. The frame count rises from eight to 16, breaking the offer, pause, and return into more stages. However, each frame also stays on screen for 0.62 seconds. Consider both changes together; twice as many frames does not necessarily mean smoother playback. This version also moves the bell and orange ribbon from the hair to the neckline, so the character details are not fully preserved.

The 20-second version reaches the requested duration, with more noticeable pauses between images. It has the same 16-frame count as the 10-second version, but each frame remains for 1.25 seconds. The extra playback time does not add more motion images; the result feels more like a sequence of key poses. This was a separately generated file, not our slowed-down version of the 10-second output. The bell returns to the right side of the image, but the cup motif on the apron becomes a paw print, so clothing details still drift.

For this heart-offering reaction, we recommend using the 2-second pacing as the starting point for further work on hand poses and loop continuity. If you need a longer pause, increase it gradually instead of stretching a cycle directly to 20 seconds. For a short story with new actions unfolding over ten or more seconds, consider an animation or video workflow before deciding whether to convert the result to GIF.
We retained one output per duration and requested them sequentially in the same conversation. The 2-second prompt was shorter; the later two added character-preservation details. We did not fix output dimensions or frame counts, or run repeated trials. This is an exploratory test of one case. Changes in size and clothing cannot all be attributed to duration, and the results do not establish success rates or a universal duration limit.
5. Dimensions and Backgrounds
In our tests, requesting 512×512 or 1024×1024 did not produce files with those dimensions. White, pale pink, and genuinely transparent backgrounds all returned GIFs we could inspect. Check the downloaded file's actual dimensions, then assess edge clearance and whether the background suits its intended use. A prompt or preview size alone is not enough.
We ran four tests using the same cat-eared reference and heart-offering action. Shared instructions requested a 2-second cycle with eight frames, a fixed front-facing, waist-up view, and a hold, offer, pause, and return sequence. We asked to preserve the bell, blue-and-orange apron, cup motif, and tail, with the cat ears, hands, and tail fully inside the frame. Tests A and B changed only the requested dimensions. Tests C and D changed the background requirement from test A.
| Test | Requested size and background | Actual size | Actual background | File size |
|---|---|---|---|---|
| A | 512×512, solid white | 437×438 | Near-white, opaque | 473.4 KiB |
| B | 1024×1024, solid white | 439×439 | Near-white, opaque | 470.8 KiB |
| C | 512×512, original pale pink | 439×439 | Pale pink, opaque | 476.3 KiB |
| D | 512×512, transparent | 443×443 | Genuinely transparent | 434.3 KiB |
All four were downloaded as GIFs with eight frames, 250 ms per frame, a 2-second cycle, and infinite looping. We did not resize, remove backgrounds, or re-encode them locally. KiB uses 1024 bytes per unit.
Check actual pixel dimensions rather than treating the requested size as the result. Neither A nor B matched its requested dimensions. Asking for 1024 did not produce a correspondingly larger image in B. These requests were not fulfilled in this test, but that does not establish approximately 439 pixels as a product-wide limit. Check file properties before using an output at a large display size. Enlarging a preview does not demonstrate additional detail.


Inspect the composition across the whole action. Frame-by-frame inspection of these four files showed the cat ears, extended hands, and right-side tail without obvious clipping by the frame. However, the transparent version had only four pixels between the upper outline and the top edge, and a minimum of 15 pixels on the right. Nothing being cut off does not mean there is ample clearance. Check the frames where the ear tips and tail approach the edges before cropping. The transparent version is especially unsuitable for a tighter top crop.
To assess readability as a chat reaction, we also displayed test A's starting and offering frames at widths of 64 and 128 pixels. At 64 pixels, the pink heart and offering pose remain recognizable, while the gaze, fingers, and apron motif are harder to distinguish. Facial changes are clearer at 128 pixels. Prioritize whether the heart and gesture read clearly, then decide whether the face needs more emphasis. This checks reduced display sizes, not compression after sending through a chat platform.
The white and pale pink backgrounds were generated, but were not perfectly constant pixel for pixel. Both white-background outputs look close to white overall, though sampled areas are not uniformly pure white. The pale pink output retains a tone close to the reference. Mean RGB values in its upper-left 10×10-pixel area vary slightly between frames, without the background changing to another overall color. Judge the result for its intended use: overall stability may be enough for a casual reaction GIF, while fitting it precisely into a pure-white page also requires checking whether a near-white rectangle is visible at the edges.

The transparent background worked in this test, but the outline still needs inspection. Every frame of test D contains transparent pixels, with zero opacity in the corners. On white and dark backgrounds, the area outside the character reveals the underlying color. It is not a white background or a drawn checkerboard. By comparison, decoded frames from A, B, and C contain no transparent pixels. A transparency index in a file is not enough to call its background transparent.

During frame inspection on light and dark backgrounds, the hair, cat ears, hands, and tail displayed independently without a solid white rectangle left behind. The transparent output's pixels were either fully transparent or fully opaque, with no partially transparent transitions. Before use, check fine hair, ear tips, and tail edges on the intended page or chat background. Successful transparency does not automatically mean the edges look good on every background color.
We recorded actual dimensions, backgrounds, frame counts, and file sizes, but these do not establish success rates. The transparent file's smaller size also does not prove that transparent backgrounds always save space. We did not compare cropping, color reduction, or frame removal as compression methods. To reduce file size further, save a copy, change one setting at a time, and recheck the motion and outline.
6. Can the GIF Follow Camera-Change Instructions?
In these heart-offering tests, the camera changes were visible, and the bell's side and the same heart were largely preserved. Correct cuts, however, did not establish that framing, action continuity, and looping were all satisfactory. Check these separately, especially whether a close-up crops the action and whether a return to the waist-up view skips the return movement.
Using the same reference image, we generated three additional white-background GIFs: a gradual push-in followed by a pullback, one cut to a close-up, and a cut to a close-up followed by a cut back to the waist-up view. All three requested a 2-second cycle with eight frames and the same hold, offer, smile, and return action. Test A from section 5 serves as the existing fixed-camera reference. The three files below are the downloaded originals from this round, without local cropping, assembly, or speed changes.
| Test | Camera instruction | Actual observation | File data |
|---|---|---|---|
| 1 | Gradually push in, then pull back to the waist-up view | The character grows larger, then smaller; the close-up lasts through frame 5, with the pullback mainly in frames 6–8 | 439×439, 8 frames, 2.00 seconds |
| 2 | Cut to a close-up between frames 2 and 3, then hold the close-up | A clear cut appears at the requested point; the ending stays close, creating a shot-size jump when the loop restarts waist-up | 439×439, 8 frames, 2.00 seconds |
| 3 | Cut close between frames 2 and 3, then cut back waist-up between frames 6 and 7 | Both cuts appear; the heart is already at the chest on return, with insufficient return-motion coverage | 437×439, 8 frames, 2.00 seconds |
All three files hold each frame for 250 ms and loop infinitely. Cut positions in the table come from frame-by-frame inspection.
Test 1: a gradual push-in looks different from a cut. The hands and heart are not the only elements getting larger; the head and upper body enlarge together, then shrink back to the waist-up view in frames 6–8. This supports describing the visible result as a push-in and pullback change in shot size. Compared with the request, the close-up lasts through frame 5 rather than clearly beginning to pull back in that frame. The ear tips also extend outside the frame in frames 3–5. With only eight frames, the steps between poses remain visible.

Test 2: one cut to a close-up works, but the loop boundary needs its own plan. Frames 1–2 show a waist-up view, and frame 3 switches directly to a tighter frontal shot. Both hands continue holding the same pink heart. We did not observe the heart disappearing, changing hands, or reappearing after the cut. The bell and orange ribbon also remain on the right side of the image.
The head and heart still change size within the close-up, so the composition is not strictly locked. In frames 4–5, the bottom of the heart is clipped, as are the ear tips. Frame 8 is still a close-up, so restarting directly at the waist-up first frame creates a clear change in shot size. This follows the test's deliberate decision not to include a return shot, rather than failing that instruction. It also means the result is not ready to serve directly as a naturally continuous looping reaction.

Test 3: adding a return shot still requires checking whether the action was cut out. This output cuts close between frames 2 and 3, then back to waist-up between frames 6 and 7, matching both requested positions. On return, the bell remains on the same side, and the blue-and-orange apron and cup motif are visible again. Both hands keep holding the heart; we did not observe a second heart or an extra offering cycle.
The weakness is the return action. Frame 6 still shows the heart extended in close-up, but when frame 7 cuts back waist-up, the heart is already at the chest. Viewers can understand that it was brought back, but do not see enough of the transition. Frame 8's shot size and heart-holding pose are close to the starting state, making it easier to plan a loop than an ending that stays close. That is still insufficient to promise a seamless transition. The clipped lower heart edge and ear tips in the close-up also remain issues.

For this case, we recommend continuing with a fixed camera, or refining test 1 with a smaller change in shot size. If a cut is necessary, use a looser close-up in the next attempt so the heart and both hands fit fully inside the frame. Specify the action states around the return cut more clearly, for example: the hands have already started moving back at the end of the close-up; after the cut to waist-up, continue that same return movement until the heart reaches the chest.
If repeated generations still fail to show the return clearly, you could prepare two shots separately and manually join them at similar action states. We did not test that editing approach, so we cannot present it as a proven fix. Each test has only one output and no fixed random seed. These findings apply to these 2-second, eight-frame samples. We verified visible changes in shot size and action state, not three-dimensional camera motion, and did not establish success rates for other camera arrangements.
With your own character reference ready, start creating in Arcloop. Begin with one expression and one main action, then use the checks in this guide to review character details, motion transitions, and the actual output file.



