---
title: "Embed an analysis in a step"
slug: "embed-an-analysis-in-a-step"
updated: 2025-06-06T19:05:09Z
published: 2025-06-06T19:05:09Z
canonical: "support.tulip.co/embed-an-analysis-in-a-step"
---

> ## Documentation Index
> Fetch the complete documentation index at: https://support.tulip.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Embed an analysis in a step

*Here's how to include an analysis in an App.*

## Overview

One of the best ways to engage users with the Tulip platform is to provide them with data driven information about what's happening on the shopfloor.

One great way to achieve this is to embed analyses into apps, which allows the user to see and interact with them without turning their head to a dashboard.

Alternatively, you can [create an interactive shop floor dashboard app](https://support.tulip.co/docs/how-to-create-your-first-shop-floor-dashboard) that can be used on a shop floor or a [mobile phone](https://support.tulip.co/docs/setting-up-the-tulip-mobile-app)

## Embed an analysis in a step

In order to embed an analysis within a step of your app, follow these steps:

1. Click **Embed** and select **Analysis**. This will add an empty embedded analysis Widget.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_92862480.png)

1. Select the analysis widget to choose the analysis to embed.  You can either [create a new analysis](https://support.tulip.co/docs/how-to-create-a-new-analysis) or select an existing analysis.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_92862616.png)

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_221510107.png)

In the **Side Pane** of the analysis widget, you can change the size and background color of the analysis just like any other widget. Additionally, you can customize the title of the analysis and toggle the display of the *Last Updated* time for each chart.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_92862734.png)

## Dynamic filters

Once you select an analysis, you can add dynamic filters.

This means that you can change the data being shown in the analysis based on a Variable, Table Record, machine output, and more.

Dynamic analyses support the following data types:

- Text
- Number
- Integer
- Boolean
- Interval
- Datetime
- User
- Station
- Machine

These will manipulate the **Filters** section from the bottom of the Side Pane in the analytics editor.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_221517961.png)

### Setup

In the Side Pane, select the pencil next to the Filters option.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_205539021.png)

Then, begin adding filters. These will change the data shown in the analysis every time the app is run.

**Example: Current operator data**

Operators may only need to see their own performance. In this case, the analysis can be set to filter to only the logged in user.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_205539461.png)

- "User" "Equals" "Variable" "Logged In User"

### App analysis filters

- User
- Station
- Start Time
- Date
- Date and Time
- Shift Duration
- Hour of Day
- Process Cycle Time
- All form inputs in that app
- All variables in that app

### Table analysis filters

- All Fields for that Table

### Machine analysis filters

- Machine
- Start Time
- End Time
- Duration
- Program
- Part Count
- Defect Count
- Parts Per Hour
- Uptime Duration
- Downtime Duration

## Technical details

          NOTE

          

Analyses are set to refresh every 60 seconds by default. When embedding in an App you may choose to reduce this duration so you can see changes as they happen.

To reduce the duration, edit the analysis and change the **Refresh Seconds** under **Sharing**. You can refresh down to minimum of 5 seconds.

![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/How%20to%20Embed%20Analytics%20in%20an%20App_75011938.png)

## Further Reading

- [Creating An Interactive Shop Floor Dashboard App](https://support.tulip.co/docs/how-to-create-your-first-shop-floor-dashboard)
- [Setting Up Your First Machine Analysis](https://support.tulip.co/docs/using-machine-data-in-the-analytics-editor)
- [Setting Up An Analysis of Table Data](https://support.tulip.co/docs/how-to-create-table-based-analytics)

---

Did you find what you were looking for?

You can also head to [community.tulip.co](https://community.tulip.co/?utm_source=intercom&amp;utm_medium=article-link&amp;utm_campaign=all) to post your question or see if others have faced a similar question!

**Widget**

**Widgets**are the elements that make up a specific **App Step.**Widgets can display information to users, collect user input, or trigger app logic.

*Common widgets include: Interactive Tables, Number inputs, Machine attribute widgets, and more.*

**Side Pane** **(Context Pane)**

The**Side Pane**is the configuration pane on the right side of the **App Editor**where steps, apps, and widgets can be configured. **Triggers**can be added to adjust widget behavior.![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Context%20Pane.png)

**Variable**

**Variables**are a location to store app information. Variables have a specific type that must match the contents they can store.

Variables are only accessible within a single application and are cleared when the app is restarted or completed.

**Table Record**

A **Table Record** is a reference to a row in a **Tulip Table**. Table Records can be created either from the Table UI or from with an App Trigger.

To edit a record it must be loaded into a **Table Record Placeholder.**

**Number**

**Number**is a Tulip Datatype. Numbers can be any positive or negative number. Numbers support decimals.

*ex. -5, 15, 47, 155, 15.2, -12.73*

**Integer**

**Integers**are a Tulip Datatype. Integers can have any whole number.

*ex. -5, 15, 47, 155. **NOT** 15.2, -12.73*

**Boolean**

**Boolean's**are a Tulip Datatype. Booleans can have True/False (Yes/No) values.

**Interval**

**Interval**is a Tulip Datatype. Intervals represent pieces of time, represented in seconds. Intervals can be added or subtracted from **Datetime**variables.

**Datetime**

**Datetimes**are a Tulip Datatype. Datetimes represent a time in the ISO8601 format.

*ex. 2022-08-31T19:56:16+00:00*

**User**

**User**is a Tulip Datatype. Users represent a single user in your Tulip **Instance.**User****variables include attributes like **Badge Id, Name, and Shift.**

**Station**

**Stations**are a digital representation of a physical place or device in your facility. Stations are 1:1 with **Interfaces (display devices)** running Tulip Player, but Stations can also be assigned **Edge Devices,**Tulip Vision Camera Configurations, Machines,****and more.

**Tulip Tables**

**Tulip Tables** are a global location to store your production data. **Tables** are made up of **Records** (rows). A single can be accessed from multiple apps or stations at the same time. ![](https://cdn.document360.io/7c6ff534-cad3-4fc8-9583-912c4016362f/Images/Documentation/Tulip%20Tables%20Overview%20-%20Feature%20Overview(1).gif)
