Imports that behave like the real thing

Paste a Figma link and urTRACE brings your prototype in - not as a stack of screenshots, and not as someone else's player wrapped in an embed. Each screen is rebuilt as a living, interactive surface: your text in your design's own typefaces, crisp at every size; images and fills exactly where they belong; full-length scrolling pages with sticky sections and pinned navigation; overlays and dialogs; components that change state in place; and the clickable connections your file defines - including links that scroll the page to their target, just like the real product would.

Because the rebuilt prototype runs entirely inside urTRACE, a session can be understood in full - every click, tap, scroll, and hesitation, down to the exact element under each click - and your testers' browsers talk to urTRACE and nowhere else. No third-party embeds, no outside calls from a participant's device.

Where a design tool can't express the interactivity you need, urTRACE Variables lets you add it after import - working text fields, dropdowns, sliders, and rules - bound to the elements you already designed.

Accuracy we measure, not assume

Every import checks its own work. Once your prototype is rebuilt, urTRACE automatically compares each screen against the design's own reference rendering and scores how closely the two match - screen by screen, not as a vague overall impression. The result appears right on your study: a match score for the prototype, and a callout naming any screen that fell below our bar, so you can look it over before your testers ever see it.

The check runs on its own after every import - including re-imports - so the score always describes the prototype your testers will actually get, not the one you imported last month.

If something can't carry across, we say so

Some prototype behaviors can't be reproduced outside the design tool - and a missing interaction that fails silently is indistinguishable from a broken product. So every import produces an import report in plain language: what didn't carry across, on which screen, and why - timed triggers, key presses, external links, fonts that had to be substituted - before you share a single test link. And when there's nothing to report, the study says imported cleanly, and means it.

We think degradation that announces itself is a feature. You should never learn about a gap in your prototype from a confused tester.

And when something still looks wrong

If a screen doesn't look right to you, one click reports it straight to us - with your import's diagnostic context attached automatically (and shown to you first), so we can reproduce exactly what you saw without screenshots or back-and-forth. Real prototypes push on every edge; the fastest way to keep imports excellent is to make telling us easier than working around it.