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

# Object Manager

> Configure entity fields, products, dimensions, and custom objects in Statisfy.

# Object Manager

The **Object Manager** is your central hub for configuring Statisfy's data model. Manage fields across all entity types, set up products and dimensions, configure CRM sync, and create custom objects.

## Accessing Object Manager

Navigate to **Settings > Object Manager** ([app.statisfy.com/settings?tab=object-manager](https://app.statisfy.com/settings?tab=object-manager)). You need admin permissions to access this page.

## Entity Tabs

The Object Manager is organized by entity type. Select a tab at the top to manage that entity:

| Tab                | Description                                                            |
| ------------------ | ---------------------------------------------------------------------- |
| **Accounts**       | Customer account fields                                                |
| **Opportunities**  | Deal and opportunity fields                                            |
| **Projects/Tasks** | Project and task fields (with per-task-type configuration)             |
| **People**         | Contact and person fields                                              |
| **Activity**       | Activity and interaction fields (with per-activity-type configuration) |
| **Product**        | Product catalog and usage dimensions                                   |
| **Custom Objects** | User-defined entity types                                              |

## Field Categories

Within each entity tab (except Product and Custom Objects), fields are organized into collapsible sections. Each section shows a badge with the field count.

<CardGroup cols={3}>
  <Card title="Standard Fields" icon="lock">
    Built-in fields provided by Statisfy. These cannot be deleted or renamed, but you can configure visibility, mandatory status, and CRM mapping.
  </Card>

  <Card title="Statisfy Fields" icon="plus">
    Custom fields you've created to capture additional data specific to your business needs. Fully editable and deletable.
  </Card>

  <Card title="CRM Fields" icon="arrows-rotate">
    Fields synced from your connected CRM (Salesforce, HubSpot, etc.). Grouped by source. Includes upstream sync toggle for bidirectional sync.
  </Card>
</CardGroup>

## Supported Field Types

| Type            | Description                                                                                               |
| --------------- | --------------------------------------------------------------------------------------------------------- |
| Text            | Single-line text                                                                                          |
| Long Text       | Multi-line text area                                                                                      |
| Number          | Integer values                                                                                            |
| Float           | Decimal values                                                                                            |
| Currency        | Monetary values                                                                                           |
| Percent         | Percentage values                                                                                         |
| Percent Ratio   | Stored as decimal, displayed as percentage (e.g., 0.2 displays as 20%)                                    |
| Boolean         | True/false toggle                                                                                         |
| Date            | Calendar dates with no time (e.g., a renewal date)                                                        |
| Date & Time     | A specific moment, with both date and time (e.g., when an event occurred)                                 |
| URL             | Web links                                                                                                 |
| Picklist        | Single-select dropdown with predefined options                                                            |
| Multi-Picklist  | Multi-select dropdown with predefined options                                                             |
| Pill            | Color-coded labels (like tags)                                                                            |
| Lifecycle Stage | Ordered stages a record moves through (e.g., an opportunity's pipeline stages), each with a display label |
| Object          | Nested fields (expandable in the UI)                                                                      |
| Lookup          | Reference to another entity                                                                               |
| Lookup List     | List of references to another entity                                                                      |
| Text List       | List of text values                                                                                       |

## Creating a Custom Field

1. Select the entity tab (e.g., Accounts)
2. Click **+ Create Field** in the top-right corner
3. Choose the field type
4. Configure the field name, description, and options
5. Click **Save**

The new field appears under the **Statisfy Fields** section.

## Editing a Field

Click the edit icon on any field to open the **Edit Field** dialog. The available options depend on the field type and whether it's a standard, Statisfy, or CRM field.

### Options for Statisfy (Custom) Fields

| Setting                | Description                                            |
| ---------------------- | ------------------------------------------------------ |
| **Display Name**       | The label shown in the UI                              |
| **Editable**           | Whether users can modify this field's value on records |
| **Upstream CRM Field** | Map this field to a CRM field for inbound sync         |

### Options for CRM Fields

| Setting                       | Description                                                    |
| ----------------------------- | -------------------------------------------------------------- |
| **Downstream Statisfy Field** | Map this CRM field to a Statisfy custom field (CRM → Statisfy) |

### Options for Opportunity and Projects/Tasks Fields

These entity types have additional field-level controls:

| Setting               | Description                                                                                                                                  |
| --------------------- | -------------------------------------------------------------------------------------------------------------------------------------------- |
| **Hidden**            | Hide the field from the UI entirely                                                                                                          |
| **Mandatory**         | Make the field required (only applies when the field is editable and not hidden)                                                             |
| **Filter Conditions** | When mandatory is enabled, optionally define conditions for when the field is required (e.g., only mandatory for certain opportunity stages) |

### Picklist and Pill Options

For picklist (dropdown) fields and pill (colored label) fields, the edit dialog includes an **options editor** where you can add, remove, and reorder the available choices. Pill options also support setting a custom color for each value.

### Lifecycle Stage Fields

Stage-type fields — such as an opportunity's **Stage** — appear in Object Manager with the **Lifecycle Stage** type. Their edit dialog includes a **stages editor** where each stage has:

* a **display label** — the friendly name users see everywhere the stage appears, including list views, filters, and CSV exports
* an **identifier** — the stored value behind it; identifiers must be unique within the field

You can add, rename, and remove stages from the same editor. Renaming a stage's display label doesn't change the stored value, so existing records, filters, and CRM sync are unaffected.

<Note>
  For stage fields synced from your CRM, keep the stage list aligned with the source system — the stored values must match what your CRM sends.
</Note>

### Formula Fields

Formula fields are special custom fields whose values are computed automatically from an expression you define. They are read-only — users cannot edit their values directly.

<CardGroup cols={2}>
  <Card title="Equation" icon="calculator">
    Write custom expressions with fields, functions, and operators. Supports arithmetic, string operations, conditionals (IF/CASE), and 30+ built-in functions.
  </Card>

  <Card title="Rollup" icon="layer-group">
    Aggregate values from related entities — SUM, COUNT, MIN, MAX, AVG, MEDIAN, FIRST, LAST, CONCAT, or COLLECT\_UNIQUE — with optional filters.
  </Card>

  <Card title="Cross-Object" icon="arrow-right-arrow-left">
    Pull a field value from a related entity (e.g., parent account name, CSM email) with optional text transforms.
  </Card>

  <Card title="Time Calculation" icon="clock">
    Calculate time differences — days until renewal, time since last activity, or duration between two dates.
  </Card>
</CardGroup>

#### Creating a Formula Field

1. Select an entity tab and click **+ Create Field**
2. Choose a field type (Text, Number, Date, Boolean, Currency, etc.)
3. Check **This is a formula field** and click **Save**
4. The formula editor opens — select a formula type and configure it
5. Use **Validate** to check for errors, **Preview** to test against real records, then **Save**

<Tip>
  The formula editor provides autocomplete (type `@`), a searchable function picker, syntax highlighting, and real-time parsed previews as you type.
</Tip>

#### Available Relationships for Rollups

Rollup and cross-object formulas traverse relationships to access related data. The available relationships depend on the entity type:

| Entity            | Relationships                                            |
| ----------------- | -------------------------------------------------------- |
| **Account**       | parent, children, descendants, csm, owner, opportunities |
| **Opportunity**   | account, owner                                           |
| **People**        | account                                                  |
| **Task**          | account, assignee                                        |
| **Product Usage** | account                                                  |

#### Editing a Formula Field

Formula fields show an **Edit Formula** link in the field edit dialog. Click it to open the dedicated formula editor where you can modify the expression, change the formula type, or update filters and aggregations.

<Note>
  For the full formula reference — including all functions, operators, aggregation types, filter operators, and examples — see the dedicated **[Formula Fields](/admin/object_manager/formula_fields)** guide.
</Note>

## Deleting a Custom Field

1. Click the delete icon on the Statisfy field you want to remove
2. Confirm the deletion in the dialog

<Warning>
  Deleting a custom field permanently removes it and all stored values across all records. Standard and CRM fields cannot be deleted.
</Warning>

## CRM Sync Configuration

### Upstream Sync Toggle

For CRM field sections (Salesforce, HubSpot), an **upstream sync** checkbox appears in the section header. This controls whether fields are synced from your CRM into Statisfy for that entity type.

### Field Mapping

You can map fields between Statisfy and your CRM in two directions:

* **Upstream CRM Field** — On Statisfy custom fields, select which CRM field should populate this field (CRM → Statisfy)
* **Downstream Statisfy Field** — On CRM fields, select which Statisfy custom field this CRM field should populate (CRM → Statisfy)

### Per-Field Upstream Target Object

Some standard fields contain rich, nested data (most notably **Activity** fields like Meeting Activity and its **Transcript** sub-field) that doesn't map cleanly to a single CRM column. For these fields, Object Manager exposes an **Upstream Target Object** picker so you can choose exactly which CRM object the data should land in.

1. Expand the field in Object Manager. Fields that support per-field sync show an **Upstream Target Object** button under the field header.

2. Click the button to open the target-object picker.

3. Pick the destination object in your connected CRM — for example, sync **Meeting Activity** into Salesforce `Event` or HubSpot `Meeting`, and sync the **Transcript** sub-field into a custom long-text field on the same object.

4. Save. From the next sync onward, Statisfy writes the field's value to the selected target object whenever the record changes.

**Conditions that must be met for the picker to be active:**

* A CRM integration (Salesforce or HubSpot) is connected
* For sub-fields like Transcript, the **parent field** (Meeting Activity) must have upstream sync enabled first — otherwise the picker shows *"Enable Meeting Activity upstream sync to configure transcript sync."*

<Note>
  If no CRM is connected, the field shows *"Connect a CRM integration (HubSpot or Salesforce) to configure upstream sync."* instead of the picker. Connect a CRM under **Integrations** first, then return to Object Manager.
</Note>

<Tip>
  Use Per-Field Upstream Target Object when you want different sub-fields of the same parent to land in different CRM objects — for example, the meeting record itself going to `Event` while the transcript goes to a long-text custom field on `Account`.
</Tip>

## Projects/Tasks and Activity: Sub-Type Configuration

For **Projects/Tasks** and **Activity** entities, fields can be configured per sub-type (e.g., per task type or per activity type). This allows you to:

* Show or hide a field for specific task/activity types
* Make a field mandatory only for certain types
* Associate custom fields with specific sub-types

## Products & Dimensions

The **Product** tab has a dedicated interface for managing your product catalog and usage dimensions.

### Creating a Product

1. Go to the **Product** tab
2. Click **+ Create Product**
3. Fill in the product details:

| Field                 | Required | Description                                                                                  |
| --------------------- | -------- | -------------------------------------------------------------------------------------------- |
| **Name**              | Yes      | Internal identifier for the product (e.g., `platform_pro`)                                   |
| **Display Name**      | No       | Human-readable label shown in the UI (e.g., "Platform Pro")                                  |
| **Snapshot Period**   | Yes      | How often usage data is captured — Daily, Weekly, Monthly, Quarterly, or Yearly              |
| **Date Column Label** | No       | Label for the date column in product usage data. Auto-populated based on snapshot period     |
| **Date Format**       | No       | Format string for dates. Auto-populated based on snapshot period (e.g., `%m/%Y` for Monthly) |

4. Click **Save**

<Tip>
  When you change the snapshot period, the date column label and date format are automatically updated to sensible defaults. You can override them if needed.
</Tip>

### Editing a Product

Click the pencil icon on a product card to open the edit dialog and update its settings.

<Note>
  The snapshot period configured on a product is used by CSV Import integrations. If you change it here, any linked CSV integrations will use the updated period.
</Note>

### Deleting a Product

To delete a product from the catalog:

1. Navigate to the **Product** tab in Object Manager
2. Click the delete icon on the product card

<Warning>
  You cannot delete a product that has dimensions. The delete button will be disabled with a tooltip explaining why. To delete such a product, you must first **delete all its dimensions** (see below), then delete the product.
</Warning>

### Deleting Dimensions

To remove dimensions and all their associated data from a product:

1. Click **Delete Dimensions** on the product card
2. A warning dialog will appear — review it carefully, as this action removes both the dimensions and all associated usage data
3. Confirm to proceed

After deleting dimensions, the product's delete button becomes enabled if you also want to remove the product itself.

### Clearing Dimension Data

To remove usage data for a product's dimensions while keeping the dimensions themselves:

1. Click **Clear Dimension Data** on the product card
2. A warning dialog will appear — review it carefully, as this action removes all stored usage data for the product's dimensions
3. Confirm to proceed

After clearing, the dimensions remain configured on the product but contain no associated data. New data can be imported again via CSV or integrations.

### Managing Dimensions

Dimensions are measurable attributes associated with a product (e.g., active users, storage used, API calls). Each product card shows its dimensions below the product details.

#### Adding a Dimension

1. Click **+ Add Dimension** on the product card
2. Enter the dimension name
3. Select the dimension type:

| Type          | Description                                                  |
| ------------- | ------------------------------------------------------------ |
| Numeric       | Integer or decimal values                                    |
| String        | Text values                                                  |
| Date          | Date values                                                  |
| Boolean       | True/false values                                            |
| Percent       | Percentage values (displayed with %)                         |
| Percent Ratio | Stored as decimal, displayed as percentage (e.g., 0.2 → 20%) |

4. Configure display settings (see below)
5. Click **Save**

#### Dimension Display Configuration

When creating or editing a dimension, you can configure how values are displayed:

| Setting              | Applies to                     | Description                                                                 |
| -------------------- | ------------------------------ | --------------------------------------------------------------------------- |
| **Hide from Widget** | All types                      | Hides this dimension from the product usage widget                          |
| **Show % Change**    | Numeric only                   | Shows period-over-period percentage change                                  |
| **Format Currency**  | Numeric only                   | Formats values as currency                                                  |
| **Suffix**           | All (editable for non-percent) | Appended to values (e.g., "users", "GB"). Auto-set to "%" for percent types |
| **Date Format**      | Date only                      | Custom date format string (e.g., `%Y-%m-%d`)                                |

#### Reordering Dimensions

Drag and drop dimensions using the grip handle to change their display order on the product usage widget.

#### Dimension Visibility

Toggle the eye icon on a dimension to show or hide it from the product usage widget without deleting it.

## Custom Objects

Custom objects let you create entirely new entity types beyond the standard ones.

**Creating a Custom Object:**

1. Navigate to the **Custom Objects** tab
2. Click **Create Custom Object**
3. Define the object name and description
4. Add fields to capture relevant data
5. Save the custom object

Custom objects appear in the navigation and can be used in views, filters, and workflows.

<Note>
  Custom objects are an advanced feature. Contact your Statisfy account team if you need guidance on structuring custom objects for your use case.
</Note>
