Tinkercad is a free app for 3D design, electronics, and coding used by millions of students and creative innovators worldwide. I designed a new feature which allows users to view their design history and restore past versions.
I was the sole UX designer on a small Agile team that included a single developer, QA, and an engineering manager. I helped define the spec, created mockups, and worked with the team to prioritize features and ensure a smooth launch.
Time: Design started in April 2025, version 1 without preview launched in May, and version 2 with the design preview launched in June.

Problem to solve
Sometimes users have trouble opening their designs, have lost recent work, or have accidentally deleted their files. In these cases they had to write in to support for help. We store a design history but it was only available to our internal staff and thus staff and users spent a lot of time communicating back and forth trying to restore the right version. This was an internal feature request to add a new feature that exposes the version history to users and lets them restore files themselves.
Support staff:
"It is just annoying all around…I made the versions go to my own account until I got the right one…there are a lot of duplicates created."
Teachers were also interested in a version history tool as a way to validate whether students actually created work themselves or copy and pasted from other sources.
Quotes from teachers:
"I would like to have connection and activities history to be able to trace back what children did."
"I would like a way to be able to tell easily if my students copied the work from the internet or someone else or see each of their steps in building."
Process
I started by asking the engineering manager lots of questions about how the version history was currently working in our admin tool and how we envision it working with the new tool. Key considerations included how often we save versions and how big the list might get, what restoring actually does, and if teachers should have access to the version history of their students. I learned that we save a version with every single change so the list could get quite long. As such, it seemed important to be able to group versions into buckets that could be more easily navigated.
I also chatted with our community admin who handled all the file restoration requests. She said the process involved a lot of trial and error to arrive at the correct version of the file because all she had to go on was a date and time. She would end up with a lot of extra duplicate versions as she tried to pinpoint the correct file version that opened properly or contained the missing data. After chatting with her I realized how helpful it might be to include a design preview so that people could visually browse for the right state in time before actually restoring.
Solution
The version history option is easily accessible from a design’s property menu. Once there, users see folders for each day of stored history and can toggle the folders open and closed to view the versions within. Versions are numbered and have detailed date and time stamps to help people keep their place in the list and narrow down the right version. When a file is restored, we create a new design copy so we don’t overwrite the original file.
We felt the visual preview could be very useful but was not absolutely necessary for first launch so we split this into two phases - the first phase was just a list of versions with dates, and the second phase included the visual preview. We ended up doing the visual preview as a close follow but the separation allowed us to move and test in a more agile way.

Version 1 without design preview

Version 2 with design preview

Challenges faced
One challenge we encountered was how to scale the visual preview on smaller devices. Historically mobile design previews were simplified to just static images that didn’t have any view controls. However, we felt that the actual 3D preview and simulation functionality could be very useful here to help people debug and track down the right version to restore.
I explored a few different ways that we might accommodate the view controls on smaller screens, such as elongating the view frame to a vertical format, pulling the controls out of the view frame, or progressively hiding certain controls at smaller sizes. We decided on a stacked view that still includes the most important functions.

Measuring success
Our new user-facing design history tool saves our internal admins a lot of time each day that they used to spend fielding user restoration requests. It also improves upon the original admin tool by grouping the versions into buckets for easier navigation and adding a visual preview to aid in pinpointing the desired version. Because this feature just launched we haven’t been able to gather any usage data yet but we have heard anecdotally that this is getting used and is appreciated.
Quotes from some tinkerers in response to a video explaining the feature:
“Most useful feature since the sketch tool”
“That is an awesome enhancement for Tinkercad”
“Yes!! one of the most useful things tinkercad added!”
We have also been pleasantly surprised by all of the ways people are using this tool that we hadn’t even considered. For example, some creators talked about how this feature helps enable more worry-free design iteration because they know they can always go back in time and branch off a different version to try something new. It’s very gratifying to see such a simple feature make such a big impact.