You don’t have to reshape your data to match the structures below. Auxia’s Transform stage maps your tables as they are — these examples show what Auxia looks for, so you know which tables to connect.
How Auxia uses this data
- Qualification criteria — rules that decide which users are eligible for a treatment, such as “signed up in the last 30 days” or “viewed a product twice this week”.
- Content personalization — inserting attributes into a treatment’s content, such as a user’s first name or the price of an item they viewed.
- Treatment selection — giving the model context to pick the best treatment for each user.
- Machine learning features — aggregations such as “logins per week” or “purchases in the last 30 days” that Auxia’s models learn from. Ingested data is ready to use as features from day one.
User attributes
User attributes describe the current state of each user — who they are, rather than what they did. Common examples:- Profile: country, language, age band, sign-up date
- Account: subscription plan, loyalty tier, account status
- Value: lifetime value, total orders, last purchase date
- Technical: device type, operating system, app version
Attributes can be stored in either of two shapes. Auxia recognizes both automatically.
Attributes in columns
One row per user, one column per attribute.Attributes in rows
Several rows per user: one column holds the attribute name, another its value.User events
Events record what users do — one row per action, with the user, the action, and when it happened. They usually come from your analytics tool or clickstream data, across your website and apps.
If every row in a table is the same event (for example, a table of logins), you can give it an event name during setup instead of needing an
event_name column.
GA4, Firebase, Amplitude, Mixpanel, and Segment event exports are recognized automatically.
Transaction events
Transactions are events that record a purchase. They follow the same structure as user events, with properties that describe the order. Connecting them lets Auxia optimize for revenue and conversion, not just engagement.
Include an item ID (such as
item_id or sku) when you have one, so transactions can be linked to your item attributes.
Item attributes
Item attributes describe the things users interact with — products, offers, articles, videos, listings — rather than the users themselves. They give Auxia context about what each user is looking at or buying, so it can recommend similar items or the right offer. An item table has one row per item, keyed by an item ID that also appears in your events or transactions. It doesn’t need a user ID. Example: a retail product catalog
Example: a promotions table
Item tables connect through the same self-serve setup wizard as your other tables. They don’t need a primary user ID — see Entity tables in Map your data.
Reference: Auxia’s unified event schema
Auxia’s Transform stage maps every event source into one unified event schema. You don’t need to produce this structure yourself — it’s here for teams that send events directly with the Log Events API or want to know what Auxia stores.Proto structure
Proto structure
BigQuery schema
BigQuery schema
Each
event_properties and user_properties record has a required property_name and exactly one of long_value (INTEGER), double_value (FLOAT), string_value (STRING), boolean_value (BOOLEAN), or timestamp_value (TIMESTAMP).Building properties in SQL (BigQuery)
Building properties in SQL (BigQuery)