What does it do?

Logic + Data runs behind the scenes — the Tapper sees nothing. It does two things:

  1. Operations — Compute new values from existing data: add, subtract, multiply, divide, join text, take a substring, or build a list.
  2. Routing — Compare two values and send the flow to one step if the comparison is true and another if it’s false.

You build it on a visual canvas, adding one node per operation plus an optional routing node.

When should you use it?

  • Counters and totals — Increment a visit count or add up amounts stored on a tag
  • Personalized text — Combine a first name and a message into a single greeting
  • Conditional flows — Show different steps to different Tappers, for example route iPhone users one way and Android users another, or branch on a value the Tapper entered

Inputs you can use

Each operation and comparison can read from:

  • KDS / tag fields — Per-tag values from your data structure
  • Form fields — Answers from earlier Form Input steps
  • Earlier Logic + Data outputs — Results computed by a prior operation
  • Dynamic Tap Data — The Tapper’s browser, OS, device, language, or approximate location
  • Literal values — A fixed number or string you type in

Operations

Operation What it does
Add / Subtract / Multiply / Divide Arithmetic on two numbers
Concat Joins two text values into one
Substr Takes part of a text value (start position + length)
Cons Builds a list value

Each operation writes its result to a named output, which you can send to:

  • Collected data — Available to later steps in this tap (like a form answer)
  • A KDS field — Persisted back onto the tag’s data

Routing (branching)

Add a routing node to choose where the flow goes next. Set a comparison — a left value, an operator, and a right value:

==, !=, <, <=, >, >=, IN, NOT_IN

Then pick a true route and a false route. Each route either continues to the next step or jumps to a specific step within this interaction.

How do you set it up?

  1. In the Interaction Builder, click Add Step → Logic + Data (Actions category).
  2. Add one node per operation. Choose the input(s), the operand, and where to write the output.
  3. (Optional) Add the routing node and set the comparison plus the true/false routes.
  4. Place the step after the data it depends on (for example, after the Form Input it reads).
  5. Publish and assign the interaction to a Kitetag Group.

Next steps

Last updated 10 Jun 2026, 20:39 -0700 . history