---
title: "Using XOR & NOT Functions - Overview | Airtable Support"
slug: "other-logical-functions"
description: "This article covers how to use XOR and NOT() functions to streamline your team's and organization's work."
updated: 2026-04-23T20:25:50Z
published: 2026-04-23T20:25:50Z
canonical: "support.airtable.com/other-logical-functions"
---

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

# Using XOR() and NOT() functions in Airtable

| **Plan Availability** | All plan types |
| --- | --- |
| **Permissions** | - **Owner** / **Creator** - Can add, delete, duplicate, rename, and customize fields - **Editors** - Sort, filter, group, hide, and copy field URL - **Commenters / Read-only** - Copy field URL |
| **Platform(s)** | Web/Browser, Mac app, and Windows app (with some additional limited support on mobile) |

## Using XOR() in Airtable

The `XOR()` function returns a “True” value when an odd number of arguments are “True.” In the example below, the `XOR()` function outputs a message when exactly one of the two checkboxes is checked — but not both, and not neither.

```plaintext
IF(
   XOR(
      {Checkbox 1}, 
      {Checkbox 2}
   ), 
   "Missing Checkmark"
)
```

![1500000115841XOR001.jpg](https://cdn.airtable.document360.io/d0ee2ee4-3f78-47c7-b388-85e40be9fb89/Images/Documentation/1500000115841XOR001.jpg)

## Using NOT() in Airtable

The NOT function reverses the logical value of its argument — if the argument evaluates to true, NOT returns false, and vice versa. In the example below, NOT is used to flag records where a task is not yet complete:

```plaintext
IF(
   NOT({Complete}),
   "Still pending"
)
```

## FAQ?

**What happens when using NOT() instead of XOR()?**

If `NOT()` is used instead of `XOR()`, it reverses the logical value of its argument. For example, `100 &gt; 75 `evaluates as “True”, while `NOT(100 &gt; 75)` is “False.”
