---
title: "FAQ"
slug: "liquid-tags-faq"
updated: 2026-03-31T14:34:47Z
published: 2026-03-31T14:34:47Z
canonical: "academy.insiderone.com/liquid-tags-faq"
---

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

# FAQ

## Why is a variable empty even though the user has data?

The [variable](/v1/docs/liquid-tags-variables) name may not exactly match the system name. Custom attributes always use the **c_** prefix and must match the system name exactly (not the display name). Check the [Attributes and Events](/v1/docs/attributes-events-page) in the InOne panel.

## What is the difference between nil, blank, and an empty string?

- **nil**: The variable is not set at all.
- **""**: The variable exists but has no content.
- **blank**: Matches both **nil** and **""** in comparisons.

Both nil and "" trigger the default filter. A string containing only whitespace (" ") is not blank.

## Why does 0 not trigger default?

[default](https://academy.insiderone.com/docs/liquid-tags-default-values#what-triggers-default) only activates for **nil**, **false**, and **""**. The number 0 is a valid value, so it is returned as-is. If you want to treat 0 as empty, use an explicit if check:

```plaintext
{% if c_total_orders == 0 or c_total_orders == blank %}
  No orders yet.
{% else %}
  {{ c_total_orders }} orders placed.
{% endif %}
```

## Why does 10 | divided_by: 4 return 2 instead of 2.5?

When both values are whole numbers, Liquid performs integer division and discards the decimal. Use 10.0 | divided_by: 4 or 10 | divided_by: 4.0 to get a decimal result. For further details, refer to [Filters](https://academy.insiderone.com/docs/liquid-tags-filters#number-filters).

## I used capitalize but the name came out wrong. What happened?

[capitalize](https://academy.insiderone.com/docs/liquid-tags-filters#string-filters) uppercases the first character and does not change the rest. "ALICE SMITH" becomes "Alice smith". For proper title casing, capitalize each word separately:

```plaintext
{% assign fn = name | capitalize %}
{% assign ln = surname | capitalize %}
{{ fn }} {{ ln }}
→  Alice Smith
```

## Why is the date empty even though the attribute has a value?

[time_format](https://academy.insiderone.com/docs/liquid-tags-filters#date-and-time-filters) fails silently when it cannot parse the input. Check that the date value is in a recognized format (ISO 8601, Unix timestamp, etc.). Formats using dots (15.01.2024) are **not** **recognized**.

## Can we use parentheses to group conditions?

No. [Parentheses in **if** conditions](https://academy.insiderone.com/docs/liquid-tags-operators#grouping-conditions-without-parentheses) are not supported. Use **nested if blocks** to achieve logical grouping.

## What is the difference between assign and capture?

- [assign](https://academy.insiderone.com/docs/liquid-tags-tags#assign) stores a single value or a filtered expression: {% assign x = name | upcase %}
- [capture](https://academy.insiderone.com/docs/liquid-tags-tags#capture) stores a rendered block of content that can include tags and multiple lines: {% capture x %}...{% endcapture %}

Use **capture** when the value you want to store requires logic or multi-line rendering.

## Why did the user receive the message after abort_message was fired?

[abort_message](https://academy.insiderone.com/docs/liquid-tags-aborting-messages) only prevents delivery when the tag is actually reached during rendering. If it is inside a condition that was not met, the message is sent normally. Double-check your condition logic with a test user.

## Can we compare a number stored as a string attribute?

[Comparisons](https://academy.insiderone.com/docs/liquid-tags-operators#comparison-operators) with **>**, **<**, **>=**, **<=** work when the value is numeric. If the attribute was stored as a string, the comparison may not behave as expected. In that case, use == "5" (string comparison) or consult the attribute's data type in the panel.
