Ronald

Ronald

Last updated on Aug 3, 2026

Variables are named, reusable values you define once and apply throughout your project. Instead of manually typing the same color code or number in dozens of places, you set up a variable with a meaningful name and reference it wherever you need it. When you update the variable, every place that references it updates automatically.


Why Use Variables?

Presets handle consistent styling within a single hotspot type, but variables go a level above that. If your brand color appears across multiple different presets (a callout preset, a menu preset, a tooltip preset), updating one variable updates all of them at once without touching each preset individually. And at the craftspace level, a single variable change can ripple across every project in your craftspace simultaneously.


Variable Types

360Crafter supports three types of variables:

Color

Stores a hex color value (e.g. #3B82F6). Color variables are the most commonly used type. Apply them to backgrounds, text, borders, icon tints, and any other color property in the editor.

Number

Stores a measurement or rotation value, such as 20px or 50%, or a number of degrees. Use number variables for consistent spacing, border radius, font sizes, rotation, or any other measurement that repeats across your project.

Icon

Stores a reference to an icon. This can be a URL, an uploaded image, or a built-in Lucide icon using the format lucide:icon-name. Icon variables let you swap out a symbol globally across all hotspots that reference it.


Scopes: Craftspace vs. Project

Variables exist at two levels:

Craftspace variables are shared across all projects in your craftspace. They are ideal for brand-wide values like your main brand colors, your company icon, and your standard sizing. Everyone working in the craftspace can use them.

Project variables are local to a single project. They are perfect for values specific to one experience, such as a scene-specific color palette, a unique icon set for that tour, or sizing that differs from the craftspace defaults.

When a project variable and a craftspace variable share the same name, the project variable takes priority. This lets you override a craftspace default for a specific project without affecting anything else.


Managing Variables

Craftspace Variables

Open the Craftspace settings to manage variables shared across all your projects. Here you can create, edit, and delete colors, numbers, and icons at the craftspace level.

Project Variables

Open the Variables page within a project to manage that project’s local variables. You will also see a read-only view of craftspace variables here, so you can see everything available to your project in one place.


Using Variables in Properties

When editing a hotspot or other element in the Properties Panel, you will see variable options in color pickers and numeric fields.

  • Color fields show a list of your color variables. Click one to apply it. The field stores a reference to the variable rather than the raw color value, so if you update the variable later the element updates too.

  • Numeric fields show a variable picker when variables of the matching type are available. Select a variable to link the field to that value.


A Built-in Variable: circle

360Crafter includes one built-in variable available to all projects: circle. It stores the value 999px, which produces a fully circular border radius when applied to an element. You will see it appear in border radius fields alongside your own variables.


Tips

  • Name variables for intent, not appearance. brand-primary is better than blue-500. If you rebrand to a different color, the name still makes sense.

  • Use craftspace variables for anything brand-wide. Reserve project variables for one-off overrides or project-specific values.

  • Project variables override craftspace variables by name. To customise a craftspace default for one project, create a project variable with the exact same name.

  • Variables are live. Editing a variable value immediately updates every place it is referenced in your project. You do not need to re-apply it manually.