---
title: "Headless vs. app-based architecture"
slug: "headless-vs-app-based-architecture"
updated: 2025-12-19T21:40:21Z
published: 2025-12-19T21:40:21Z
---

> ## 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.

# Headless vs. app-based architecture

A critical architecture decision is **where machine logic executes**: headless (cloud/edge) or app-based (terminal).

## Trade-off matrix

The table below explains different logic execution methods.

| Method | Headless | Cost | Ideal use cases | Limitations |
| --- | --- | --- | --- | --- |
| **Machine triggers** | Yes | Included in Tulip machine license | OEE tracking, state management, simple part counting | Limited actions (state changes, activity fields only), **no expression editor**, cannot call connector functions |
| **Automations** | Yes | Per-task pricing | Complex workflows, table writes, connector functions, external system integration | Cost scales with usage, **no completion records** |
| **App triggers** | No | Included | Human-machine workflows, rich UI interactions, complex logic with expressions | **Requires app running on terminal**, not suitable for 24/7 monitoring |
| **DataOps platform** (e.g. Litmus, High Byte) | Yes | Contact DataOps vendor | Advanced data normalization, time-series database, multi-protocol aggregation | Additional platform to manage, higher total cost, integration complexity |
| **Edge device + Node RED** | Yes | One-time hardware cost | Highly customized logic, customer-owned infrastructure | Less reliable (**no failover/multi-threading**), harder to scale, maintenance burden |

## Decision criteria

### Machine triggers

**Use machine triggers when:**

- You need basic OEE tracking (state, part count, defects)
- Logic is simple conditional checks (e.g., "if attribute > 10, set state to Running")
- Cost optimization is critical (included with Tulip)

### Automations

**Use Automations when:**

- You need to write machine data to Tulip tables
- Integration with external systems via connector functions is required
- Headless operation is mandatory and budget supports per-task pricing

**Example**: "When Machine 5 outputs defect code, create record in Quality Issue table AND send Slack notification"

### App triggers

**Use app triggers when:**

- Human operators are actively involved in the workflow
- You need the expression editor for complex calculations
- Workflow includes UI interactions (buttons, forms, scans)

**Example**: "Operator presses 'Complete Run', app calculates OEE from machine data and displays result on screen"

### DataOps platform

**Use DataOps platform when:**

- You need sub-second data resolution (<1 Hz)
- You need to aggregate data from non-Tulip-supported protocols
- Time-series database is required for advanced analytics
- Customer has existing investment in the platform

### Edge device

**Use an Edge device + Node-RED when:**

- You are running a proof-of-concept or pilot project
- Customer has strong embedded systems expertise
- Regulatory requirements prevent cloud-based logic execution
- Budget constraints prohibit subscription software

## Further reading

- [Machine monitoring app-based architecture patterns](/r230/docs/machine-monitoring-app-based-architecture-patterns)
- [Create your first machine trigger](/r230/docs/create-your-first-machine-trigger)
- [Automations](/r230/docs/automations-1)
- [Edge IO](/r230/docs/edge-io)
- [Node-RED](/r230/docs/node-red)

---

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 solved a similar topic!

**OEE (Overall Equipment Effectiveness)**

A key performance indicator (KPI) that measures manufacturing productivity by calculating the percentage of planned production time that is truly productive. **OEE** combines three factors: **Availability** (uptime), **Performance** (speed), and **Quality** (good parts produced).

**Formula:** OEE = Availability × Performance × Quality

**Scale:** Expressed as a percentage, where 100% represents perfect production (manufacturing only good parts, as fast as possible, with no downtime).

**DataOps platforms**

DataOps refers to integrated software solutions that streamline the collection, transformation, contextualization, and delivery of industrial data across operational technology (OT) and information technology (IT) systems.

Key characteristics:

- Edge-to-cloud data pipeline management: Orchestrate data flow from factory floor devices to enterprise systems and cloud platforms
- Protocol translation: Convert between industrial protocols (Modbus, OPC-UA, Ethernet/IP) and modern IT standards (REST APIs, MQTT)
- Real-time data processing: Apply filtering, aggregation, and transformation at the edge to reduce bandwidth and latency
- Contextualization: Add metadata and business context to raw sensor data for meaningful analysis

**Node-RED**

**Node-RED**is an open-source flow-based logic language that runs natively on **Edge IO**and **Edge MC.**The Node-RED community has developed 3500+ libraries to interface with just about anything!
