Updates

Runs Page Now Live

Not every generation needs a full canvas workflow. The Runs page gives you direct access to model generations outside of a node graph — a focused space for quick re-generations, one-off tests, and iteration without the overhead of building a pipeline.

What Runs is for

Canvas is the right tool when you’re building a structured workflow: chaining models, wiring up control inputs, and repeating a process across many assets. But a lot of the actual work happens before that — trying a prompt variation, checking how a model handles a reference, regenerating a single output with different settings.

Runs handles that part. You pick a model, set your inputs, and generate. No graph required.

How it works

Open the Runs page from the Studio sidebar. Select a model from the available list, configure your prompt and any input parameters, and run. Each generation is logged with its inputs, outputs, and cost so you can refer back to it or replay it later.

Runs aren’t isolated from your canvas work — outputs generated here are available in your asset library and can be pulled into any canvas workflow as a reference or starting point.

When to use it

Use Runs when you want to test a model’s behavior quickly, compare outputs across a few prompt variations, or re-run a previous generation with adjusted parameters. It’s also useful for validating that a model handles a specific input type before wiring it into a larger pipeline.

The page is available on all Studio plans. Open Studio to try it.

Refer Friends, Get Credits

When someone you refer subscribes to a paid OTOY Studio plan, you get $15 in credits added to your account — no caps, no expiry on earning.

How to refer

Your referral link is in your account settings under Referrals. Share it however you’d like — directly, in a message, or on social. When someone signs up through your link and upgrades to a paid plan, the $15 credit is applied to your account automatically.

Credits go to your account balance and apply to any usage in Studio: generations, compute, and model access.

What counts as a referral

Credits are issued when the person you referred subscribes to a paid plan — not on signup alone. Free accounts don’t trigger a payout. There’s no limit to how many people you can refer.

Using your credits

Credits are applied automatically to your next billing cycle. You’ll see the balance in your account dashboard and a line item in your invoice showing the applied amount.

Open Studio to find your referral link and start sharing.

v2.67.0

This release brings new canvas customization options for managing visual clutter on complex graphs, plus a handy way to navigate between connected nodes.

Connected inputs strip

When you select a node, a new strip appears below it showing tiles for each connected input. Each tile acts as a locate button—clicking it pans and zooms the canvas to the upstream source node and selects it. This works for all input types, not just images and videos.

The feature is off by default and can be enabled in Preferences under “Show connected inputs below selected nodes.” The strip automatically hides when zoomed out beyond 60% to maintain clickable targets.

Customizable edge visibility

Two new canvas edge enhancements give you more control over visual clutter. Edges are now slightly wider by default for better visibility across all states.

A new experimental setting lets you dim unselected edges to 25% opacity instead of hiding them completely. This reduces clutter on dense graphs while keeping the wiring visible. When enabled, edges connected to selected nodes remain fully opaque. Find this as “Dim edges unless a connected node is selected” in Preferences.

Quality of life

  • Toggle settings no longer show a reset button, eliminating layout shifts when flipping switches
  • Number and select settings now show their reset button to the left of the control, keeping the input stable when it appears
  • Group containers now correctly render behind links when no nodes are selected
  • The GPT Image 2 announcement banner has been removed from the canvas

v2.65.0

This release brings powerful filtering and sorting to the jobs page, lets you open input images in a lightbox, and adds support for element inputs when running jobs directly from the feed.

Multi-select filters and sorting for jobs

You can now filter your job history by multiple statuses, models, output media types, and folders simultaneously. Tag-based filtering is also available for including or excluding specific tags. A new sort menu lets you order jobs by newest, oldest, shortest duration, or longest duration. All filter and sort selections are saved in the URL, so your view persists across page reloads.

View input images at full size

Clicking on an input image thumbnail within a job card now opens a full-size lightbox directly on the page, allowing you to inspect the source material without navigating away. You can cycle through all media inputs for that job using the previous and next buttons.

Run element-based nodes from the jobs page

Nodes that require an element input, such as Kling reference or video generation, can now be configured and run directly from the jobs feed. A new element picker lets you select from your existing library or create a new element inline.

Quality of life

  • Group node background colors are now more distinct for easier visual identification.
  • The Expand button on job output media is consistently positioned in the top-right corner.
  • 3D model and Gaussian splat outputs now display as thumbnail cards in the jobs feed.
  • Nodes created near a reference node that is inside a group are now placed at the correct absolute position.
  • Copy and paste operations now preserve a node’s output preview, matching the behavior of duplication.
  • Group node titles now scale with zoom level consistently with other node titles.

Object placement in perspective space

The problem with most AI generation workflows is that they treat each output as a standalone artifact. You generate, you evaluate, you discard or keep — and then you start again from scratch. What gets lost is the system: the relationship between prompt structure, model behavior, and the specific visual language you’re trying to develop.

Building a production-level workflow means treating your prompts, references, and outputs as a connected body of work — not a series of isolated experiments. The canvas is where that system lives.

Start with the structure, not the detail

The most common mistake is front-loading specificity. Writers know this problem as trying to write perfect sentences before you have a working outline. In generative work, it shows up as obsessing over lighting descriptors when the composition itself isn’t right yet.

Work in passes. Your first generation should answer only the compositional question — does the subject read clearly against the background? Is the perspective plausible? Only once the structural read is right do you start layering in lighting, texture, and material detail.

The best creative directors in this space don’t think in individual prompts. They think in systems — a vocabulary of references, constraints, and combinatorial rules that produce consistent results at scale.

Perspective as a first-class constraint

Object placement is fundamentally a perspective problem. A generated scene has an implied camera position — focal length, height, angle — and any object you introduce needs to be consistent with that implied camera, or it will read as wrong even if the viewer can’t immediately articulate why.

The practical approach: identify the vanishing points in your scene before you try to place anything. Describe the camera position in your prompt as concretely as you describe the subject — “shot at knee height, 35mm equivalent, slight upward tilt” gives the model something to anchor against.

Grounding with reference geometry

For product placement and architectural integration — the cases where technical accuracy matters most — a geometry pass before the generation pass makes a significant difference. Rough 3D blockouts, even at low fidelity, give the model a structural skeleton to work against.

OTOY Canvas supports this with its 3D input nodes: you can bring in a rough mesh or a splat scene and use it as structural reference, then pipe the result into an image refinement model. The perspective comes from real geometry, not from the model’s guess.

The shadow test

A quick diagnostic for placement accuracy: does the shadow match? Shadows encode the light direction, the camera angle, and the relationship between the object and the ground plane. If any of those are inconsistent, the shadow will look wrong before anything else does. Use it as an early-exit check.

Building a consistent pipeline

Once you have a placement approach that works, the goal is to make it reproducible. That means saving the prompt structure, the reference set, the model configuration, and the node graph as a named workflow — not just the final output.

The workflows that scale are the ones where a new team member can open the graph, understand the intent from the structure, and produce a consistent result without asking what settings were used. That’s the difference between a creative system and a lucky generation.