- Print
- DarkLight
Configure KPI Rollups
- Print
- DarkLight
Overview
KPI rollups let you control which machines are included when calculating Key Performance Indicators at the factory and line level on the Factory Analyze homepage. Instead of automatically including all machines, you can specify exactly which machines contribute to each KPI calculation.
Feature Benefits
Control homepage display: Prevent individual machine KPIs from showing at the facility level—only display aggregated factory and line KPIs
Improve accuracy: Exclude machines with data quality issues or those undergoing maintenance from aggregate calculations
Flexible testing: Gradually roll out KPIs to new machines or compare performance across different configurations
Find Factory and Line IDs
Factory and line IDs are not visible in the UI and must be retrieved the following method.
Step 1: Get the Factory ID from the URL
.png)
Navigate to the Factory Analyze homepage
Select a Facility to open the facility detail page
Look at the URL in your browser's address bar
URL format:
https://<tenant>.sightmachine.io/eb/facility/<factory_id>Example:
https://acme.sightmachine.io/eb/facility/ETL3_AtlantaThe factory ID is:
ETL3_Atlanta

Step 2: Open Developer Tools
Open your browser's Developer Tools:

Step 3: Find Line IDs in the Network Tab
In Developer Tools, select the Network tab
Refresh the facility page (using your browser's refresh button or Ctrl+R / Cmd+R)
In the Network tab, locate the request to
/assetsYou can use the filter/search box to find it quickly
Select the
/assetsrequestSelect the Response tab to view the response data
In the response, find the
linearrayFor each line object, note:
The
nameoridfields → This is the line ID for rollupsThe
factory_idfield → Confirms which factory this line belongs to

Example response snippet:
{
"results": {
"line": [
{
"id": "Processing_line1",
"name": "Processing_line1", ← This is the line ID for rollups
"display_name": "Processing Line 1",
"factory_id": "ETL3_Atlanta", ← This confirms the factory ID
"machine": [
{"name": "Packer1", "id": "..."},
{"name": "Packer2", "id": "..."}
]
},
{
"id": "Processing_line2",
"name": "Processing_line2", ← Another line ID
"display_name": "Processing Line 2",
"factory_id": "ETL3_Atlanta",
"machine": [
{"name": "Packer3", "id": "..."}
]
}
]
}
}💡 Tip: The factory_id field in each line object shows which factory the line belongs to—this helps you verify you're configuring the correct relationships.
Configure Rollups in Workspace Manager
Step 1: Open the KPI Artifact
Navigate to Workspace Manager
Select your workspace
Select KPI artifact
Find your KPI
Select the KPI to open the editor
Step 2: Add the Rollups Configuration
In the KPI artifact editor, locate the JSON configuration and add or update the rollups field:
{
"name": "quality",
"display_name": "Quality",
"formula": "good_parts/total_parts * 100",
"dependencies": [
{
"name": "good_parts",
"aggregate": "sum"
},
{
"name": "total_parts",
"aggregate": "sum"
}
],
"field_maps": [
{
"machine_types": ["Packer"],
"alias_map": {
"good_parts": {
"row_formula": "stats__good_parts__val"
},
"total_parts": {
"row_formula": "stats__total_parts__val"
}
}
}
],
"rollups": {
"factory": {
"ETL3_Atlanta": ["Packer1", "Packer2"]
},
"line": {
"Processing_line1": ["Packer1"],
"Processing_line2": ["Packer2"]
}
},
"unit": "%",
"directionality": "positive",
"good_threshold": 90,
"bad_threshold": 70
}Step 3: Validate Your Configuration
Select Validate in Workspace Manager
Review any errors or warnings:
✓ Factory IDs exist
✓ Line IDs exist
✓ Machine names are valid
✓ Machine lists are not empty
Fix any validation errors before proceeding
⚠️ Warning: If validation fails with "factory id not found," verify you copied the exact name from the API response.
Step 4: Save and Deploy
Select Save to save the KPI artifact
Review changes in the workspace summary
Select Deploy to activate your changes
Wait for deployment to complete
Step 5: Verify on Homepage
Open the Factory Analyze homepage
Check that KPI values display for:
Your configured factories (using specified machines)
Your configured lines (using specified machines)
Verify the values match your expectations
Configuration Examples
Example 1: Factory-Only Rollups
Specify machines for factory-level KPIs, use defaults for lines:
{
"rollups": {
"factory": {
"Chicago_Plant": ["Dryer_1", "Dryer_2", "Dryer_3"]
},
"line": {}
}
}Example 2: Multiple Factories and Lines
Configure different machines for each factory and line:
{
"rollups": {
"factory": {
"Atlanta_Plant": ["Packer1", "Packer2", "Packer3"],
"Dallas_Plant": ["PKR_A", "PKR_B"]
},
"line": {
"Line_A": ["Packer1"],
"Line_B": ["Packer2", "Packer3"],
"Line_C": ["PKR_A", "PKR_B"]
}
}
}Example 3: Exclude Problematic Machines
Include only reliable machines in your rollup:
{
"rollups": {
"factory": {
"Main_Factory": ["Machine_1", "Machine_2", "Machine_3"]
// Machine_4 and Machine_5 excluded due to data quality issues
},
"line": {}
}
}Example 4: Use Default Behavior
Leave rollups empty to automatically include all matching machines:
{
"rollups": {
"factory": {},
"line": {}
}
}💡 Tip: When rollups are empty, the system includes all machines in each factory/line that match the KPI's machine_types.