Skip to main content

Attribute Mapping (Custom Metafields)

Learn how to map custom Shopify metafields and discovered Brevo attributes to Brevo PushOwl contact attributes for advanced personalization and segmentation.

Written by Engineering team

Brevo PushOwl can sync custom Shopify metafields to your marketing platform, enabling advanced personalization and segmentation based on your unique customer data. This complements the standard customer fields covered in Customer Data Reference.

What is Attribute Mapping?

Attribute Mapping allows you to sync custom customer data from Shopify metafields to your contact attributes. This enables you to:

  • Personalize emails with custom customer data (birthday, preferences, etc.)

  • Create segments based on custom attributes (loyalty tier, shoe size, etc.)

  • Use custom data in automation triggers and conditions

How It Works

The Attribute Mapping interface shows two types of attributes, which you can filter using the Attribute Type dropdown:

1. Standard Shopify Attributes (One-Way Sync)

These are built-in Shopify customer fields that sync one-way from Shopify to Brevo PushOwl. Changes made in Brevo PushOwl to these attributes will be overwritten on the next sync from Shopify.

Brevo PushOwl Attribute

Type

Description

FIRSTNAME

Text

Customer's first name

LASTNAME

Text

Customer's last name

SMS

Text

Customer's phone number

CUSTOMER_ID

Text

Shopify customer numeric ID

CUSTOMER_NOTE

Text

Custom notes on the customer

TAGS

Text

Shopify customer tags (comma-separated)

COMPANY

Text

Customer's company name

ADDRESS_1

Text

Primary address line

ADDRESS_2

Text

Secondary address line

CITY

Text

Customer's city

STATE

Text

Customer's state/province name

PROVINCE

Text

Customer's province name

COUNTRY

Text

Customer's country name

COUNTRY_CODE

Text

ISO country code (e.g., "US")

PROVINCE_CODE

Text

ISO province/state code (e.g., "NY")

ZIP

Text

Customer's postal/ZIP code

ORDER_COUNT

Float

Total number of orders placed

TOTAL_SPENT

Float

Total amount customer has spent

TAX_EXEMPT

Text

Tax exemption status

CURRENCY

Text

Customer's preferred currency

LOCALE

Text

Customer's preferred language/locale

SHOPIFY_GID

Text

Shopify GraphQL API ID

VERIFIED_EMAIL

Text

Email verification status

MARKET_HANDLE

Text

Shopify market handle

MARKET_ID

Text

Shopify market identifier

CUSTOMER_CREATED_AT

Text

Customer account creation timestamp

CUSTOMER_UPDATED_AT

Text

Customer last updated timestamp

CUSTOMER_OPT_IN_LEVEL

Text

Customer's opt-in level

CUSTOMER_OPT_IN_TIME

Text

When the customer opted in

SHOPIFY_CREATION_DATE

Date

Customer creation date

SHOPIFY_CUSTOMER_TAGS

Multiple-choice

Customer tags (multi-select)

2. Custom Metafields (Two-Way Sync)

Custom Shopify metafields sync both ways between Shopify and Brevo PushOwl. Changes made on either platform will be reflected on the other.

A custom metafield you create in Shopify appears in the Attribute Mapping list once you've assigned it to at least one customer (see Setting Up Attribute Mapping below). From there, you map it to a Brevo PushOwl contact attribute.

Custom attributes that originate in Brevo PushOwl (for example, attributes you add in Brevo for segmentation, opt-in form fields, or scores) are no longer created as Shopify metafields automatically. Instead, they appear in the Attribute Mapping list as unmapped attributes, ready for you to map. No Shopify metafield is created and no value is synced until you map the attribute. Once you map it, Brevo PushOwl creates the matching Shopify metafield and syncing begins see Mapping Custom Attributes from Brevo below.

Custom metafields can be mapped to the following attribute types:

Attribute Type

Description

Example Use

Text

Single line text values

Customer preferences, notes

Float

Decimal numbers

Age, shoe size, custom scores

Date

Date values

Birthday, anniversary, join date

Boolean

True/false values

Loyalty status, VIP flag

Category

Predefined categories

Region, membership tier

Multiple-choice

Multiple selectable values

Interests, product categories

The Attribute Mapping interface in Brevo PushOwl showing custom metafield mappings with their Shopify field names and corresponding Brevo attribute types.

Mapping Custom Attributes from Brevo

When you create a custom attribute in Brevo PushOwl for example, an attribute for segmentation, a field collected by an opt-in form, or a custom score it appears in the Attribute Mapping list as an unmapped attribute.

An unmapped attribute is not synced, and no Shopify metafield is created for it, until you map it. To start syncing it:

  1. Go to Settings > Attribute Mapping and find the unmapped attribute in the list.

  2. Choose the Brevo PushOwl attribute type to map it to. Any supported type can be mapped, including Category and Multiple-choice.

  3. Click Save Changes.

When you save the mapping, Brevo PushOwl creates the corresponding Shopify metafield and customer values start syncing. Attributes you never map are simply not synced.

Setting Up Attribute Mapping

There are two ways an attribute becomes available to map: you create a custom metafield in Shopify (Step 1 below), or you create a custom attribute in Brevo PushOwl, which then appears in the Attribute Mapping list ready to map (see Mapping Custom Attributes from Brevo above no Shopify metafield is needed up front).

Step 1: Create Metafields in Shopify

First, create your custom metafields in Shopify:

  1. Go to Settings > Metafields and metaobjects in Shopify admin

  2. Select Customers

  3. Add a new metafield definition

  4. Choose the appropriate type (single line text, number, date, etc.)

Step 2: Map Attributes in Brevo PushOwl

  1. Navigate to Settings > Attribute Mapping in your Brevo PushOwl dashboard

  2. Find your new metafield or an unmapped custom attribute from Brevo in the list

  3. Verify the Brevo PushOwl attribute name and type

  4. Click Save Changes

The Attribute Mapping settings page where you can map Shopify metafields to Brevo PushOwl contact attributes.

Step 3: Resync Attributes

To ensure all customer data is updated with the new mapping:

  1. Click Resync Attributes button

  2. Wait for the sync to complete

  3. Check the "Last synced" timestamp for confirmation

The Resync Attributes button and Last synced timestamp confirming when attribute data was last synchronized.

Supported Metafield Types

Brevo PushOwl supports mapping these Shopify metafield types:

Shopify Type

Maps To

Notes

Single line text

Text

Direct text mapping

Number (decimal)

Float

Numeric values with decimals

Number (integer)

Float

Whole numbers

Date

Date

Date only (no time)

Date and time

Date

Converts to date format

Boolean

Boolean

True/false values

List (single line text)

Multiple-choice

Multiple values

JSON

Text

Stored as text string

Managing Attribute Mappings

Viewing Mappings

The Attribute Mapping interface shows:

  • Attribute field type: Whether it's a standard Shopify field or custom Metafield

  • Customer object field: The Shopify metafield name

  • Brevo PushOwl contact attribute: The corresponding attribute in Brevo PushOwl

  • Brevo PushOwl attribute type: The data type in Brevo PushOwl

  • Action: Remove the mapping

Removing Mappings

To stop syncing an attribute:

  1. Find the attribute in the list

  2. Click the delete icon button in the Action column

  3. Click Save Changes

Note: Removing a mapping doesn't delete existing data in Brevo PushOwl, it just stops future syncs.

Using Mapped Attributes

In Personalization

Use mapped attributes to personalize your messages:

In Segmentation

Create segments using custom attributes:

  • Loyalty tier = "Gold"

  • Birthday is in the next 7 days

  • Region = "West Coast"

  • Age > 25

In Automations

Trigger automations based on attribute values:

  • When loyalty status changes to VIP

  • When birthday approaches

  • When a custom score reaches a threshold

Sync Timing

Initial Mapping

When you first map an attribute:

  • A custom attribute from Brevo doesn't sync until you map it. Mapping it creates the Shopify metafield, and values sync from that point on.

  • Existing customer values sync during the next customer sync

  • New customer values sync in near real-time going forward

Ongoing Sync

Event

Sync Timing

Customer metafield updated in Shopify

Near real-time (webhook)

Manual resync triggered

Processes all customers with that metafield

Bulk data sync

Includes all mapped attributes

Resync Attributes

The Resync Attributes button:

  • Refreshes the list of available metafields

  • Syncs all mapped attribute values for all customers

  • Updates the "Last synced" timestamp

Best Practices

Naming Conventions

  • Use clear, descriptive metafield names

  • Avoid special characters that might cause issues

  • Be consistent with naming across your organization

Choose Appropriate Types

  • Use Float for numeric values you'll want to filter by range

  • Use Date for dates you'll want to filter by time periods

  • Use Boolean for simple yes/no flags

  • Use Category for predefined lists with limited options

Plan Before Creating

  • Decide what customer data you need before creating metafields

  • Consider how you'll use the data in segmentation and personalization

  • Document your attribute naming scheme

Troubleshooting

My new Brevo attribute isn't syncing

Custom attributes from Brevo are no longer synced automatically — they must be mapped first. If a Brevo attribute isn't showing up on your Shopify customers:

  1. Go to Settings > Attribute Mapping and find the unmapped attribute in the list.

  2. Map it to a Brevo PushOwl attribute type and click Save Changes — this creates the Shopify metafield and starts syncing.

Metafield Not Appearing

Check:

  1. Metafield is created in Shopify under Settings > Metafields and metaobjects > Customers

  2. The metafield has been assigned to at least one customer (a new Shopify metafield only appears in the list after it's set on a customer)

  3. Click Resync Attributes to refresh the list

  4. Wait a few minutes for sync to complete

Attribute Values Not Syncing

Solutions:

  1. Verify the mapping is saved (click Save Changes)

  2. Check the customer has a value for that metafield in Shopify

  3. Wait for the next sync cycle or trigger a manual resync

Attribute Type Mismatch

If you select an incompatible attribute type when mapping, Brevo PushOwl will show an "Attribute type mismatch" warning. For example, mapping a Shopify number_decimal type to a Brevo text type could lead to data sync issues.

The Attribute type mismatch warning that appears when a Shopify metafield type is incompatible with the selected Brevo PushOwl attribute type.

When you see this warning:

  1. Click Cancel and select a compatible attribute type instead

  2. If you're sure about the mapping, click "Let me update manually" to proceed, but be aware this may cause data sync issues

Sync Conflicts

  • Standard Shopify attributes: Shopify is the source of truth. If you edit a standard attribute directly in Brevo PushOwl, it will be overwritten on the next sync from Shopify.

  • Custom metafields: These sync both ways. Changes on either platform will be reflected on the other.

Common Questions

Why doesn't my new Brevo attribute sync automatically anymore?

Brevo PushOwl no longer auto-creates a Shopify metafield for every custom attribute that arrives from Brevo. New Brevo attributes now appear in the Attribute Mapping list so you can choose which ones to sync. Map the attribute under Settings > Attribute Mapping and Brevo PushOwl will create the Shopify metafield and begin syncing. This keeps your Shopify store from filling up with metafields you don't need.

Can I map attributes from opt-in forms?

Yes. Attributes collected through opt-in forms appear in the Attribute Mapping list like other custom Brevo attributes. Map them to start syncing.

Can I sync order metafields too?

Currently, attribute mapping is available for customer metafields. Order metafields are included in order sync but aren't separately mappable.

Is there a limit to how many attributes I can map?

There's no hard limit, but for performance:

  • Map only attributes you actively use

  • Remove mappings for deprecated metafields

  • Consider the sync load for stores with many customers

Can I rename the Brevo PushOwl attribute?

The Brevo PushOwl attribute name is based on the Shopify metafield name. To change it, you'd need to create a new metafield in Shopify with the desired name.

Do all customers need values for mapped metafields?

No - if a customer doesn't have a value for a metafield, that attribute simply won't be set on their contact record. Your segments and personalizations should handle cases where attributes might be empty.

Related Articles

Did this answer your question?