Changelog
See what the team has been working on. Here you'll find the latest updates about what's new, improved, and fixes to our CDXP.
Lexer Track: Tables launched
Tracking key customer metrics and changes in segments over time is now possible with Lexer Track Tables. Our new table builder turns metrics into must-have reports in seconds. https://learn.lexer.io/docs/track-tables
Lexer Segment: Faster, smarter, more tailored
We’ve made exciting updates to Lexer Segment. Creating high-value segments for insight and 1:1 personalization is easier, quicker, and more tailored. https://learn.lexer.io/docs/segment-overview
- Smarter. Easily explore all available sources, attributes, events, and segments.
- Favorites. Access your go-to attributes instantly with just one click.
- Faster. Enjoy faster response times for rapid data-driven insight.
- Presets. Start with essential attributes for consistent customer analysis.
Emarsys: Segment ID
Our Emarsys integration now includes a segment ID custom field on profiles fetched from Emarsys, capturing the IDs of Emarsys segments each profile belongs to. https://learn.lexer.io/integrations/emarsys
Lexer Identity resolution: New job
The updated CDE-based Identity Resolution job offers improved stability with an up-to-date Databricks runtime, centralized configuration storage, and improved visibility with job statistics now available in the Logs UI. And also now supports id_type in the identity resolution process.
Event Search: Added currency values
Event Search now supports currency values on orders, improving activations with platforms like Braze that require currency data for purchases.
Write API: Product inventory and availability
The Write API now supports inventory and availability details on product entities, enabling you to power the Lexer Product Recommender with your own product data. https://learn.lexer.io/api-documentation#tag/Products
Emarsys, Braze: Improvements
Emarsys integration upgraded to more efficiently pull data from Emarsys into the Lexer CDXP. https://learn.lexer.io/integrations/emarsys
Braze integration will now automatically consume all “currents” streams from Braze after configuring the data transfer bucket. https://learn.lexer.io/integrations/braze
Integration tap improved to better handle server errors from their sources.
Lexer Activate: bug fixes
Activate now has more specific error messages, replacing the “Activation timed out” message with more specific descriptions. We also resolved an issue from the recent Activate UI update, ensuring accurate display of the selected external audience for all activation types.
Lexer Activate: New workflow, more features, better personalization
Activate has received a major refresh - with a sleek new look, new features, and improved performance that will take your audience activation and marketing personalization to the next level. https://learn.lexer.io/docs/activate-overview
- Fast and initiative workflow to help turn high-value segments into revenue generating audiences.
- Automatically update audiences across all channels daily.
- Generate A/B spits, and control groups for testing and measurement.
- Measure the impact with audience and customer attribution.
- Support for email, SMS, social, display, SFTP, S3 and more.
Event search: More custom event types
Event search now supports more custom field order types. e.g. dates, numbers, and arrays.
Google Ads, Emarsys, Klaviyo: Integration improvements
Google Conversions API (CAPI) upgraded to v16. https://learn.lexer.io/integrations/google-offline-conversions
Emarsys integration upgraded to better handle empty exports. https://learn.lexer.io/integrations/emarsys
Klaviyo integration error messaging upgraded to now identify if a segment ID is invalid. https://learn.lexer.io/integrations/klaviyo
Activation configuration: Bug fix
Resolved an issue to ensure activation configurations remain stable, even when edited immediately after saving.
me&u and Campaign Monitor: Improvements
Mr Yum and Mr Yum Connect integrations are now me&U and me&u Connect. https://learn.lexer.io/integrations/mr-yum
Improved me&u Connect authentication reliablity. https://learn.lexer.io/integrations/mr-yum-connect
Improved Campaign Monitor integration reliability. https://learn.lexer.io/integrations/campaign-monitor
Criteo: API upgrade
Updated Criteo integration to the latest API version 2024-07 https://learn.lexer.io/integrations/criteo
Product Recommender: Improved joining logic
Improved the way the Lexer Product Recommender model joins product level data with transactional data. The recommender is now able to join on multiple IDs, product_id, or sku. https://learn.lexer.io/docs/predictive-attributes
Product Recommendations: Improved predictive logic
Improved AI-powered predictive analytics and product recommendation logic deployed. Results are now more relevant, timely, and useful. https://learn.lexer.io/docs/predictive-attributes
Plus we introduced eight new adjustable settings to help fine-tune and customize recommendations for each client. Options include: Recommendations per profile, Product price, Product name, Recency, Status, Previously purchased, Stock level, and Returns. https://www.lexer.io/blog/more-insight-and-personalization-introducing-improved-predictive-product-analytics
Write API, Build Index, Schema improvements
Increased Write API payload limit, increasing bulk importation of data. https://learn.lexer.io/api-documentation
Improved Build Index stability, reducing errors. https://learn.lexer.io/docs/how-data-is-ingested-into-the-cdp
Added automated format validation to schemas. https://learn.lexer.io/landing-page/lexer-data-specification-lp
Criteo, Dotdigital, Mailchimp, Klaviyo: Improvements
Upgraded Criteo API to version 2023-07. https://learn.lexer.io/integrations/criteo
Improved DotDigital integration to better handle errors when removing contacts from address book. https://learn.lexer.io/integrations/dotdigital
Improved Mailchimp integration to handle JSONDecodeError errors. https://learn.lexer.io/integrations/mailchimp
Improved Klaviyo integration to better handle server errors. https://learn.lexer.io/integrations/klaviyo
Forms: New Date of Birth option with dynamic age validation
Forms now supports “Date of Birth” question types that map responses to the standard Date of Birth attribute. Supports multiple forms all writing to this single attribute, improving data quality. https://learn.lexer.io/docs/create-build-and-design-forms
Forms now supports dynamic age-validation on “Date” and “Date of Birth” questions, allowing you to restrict form submissions to customers over a certain age. https://learn.lexer.io/docs/using-conditional-logic-and-validation-for-forms
APIs: Improved documentation
Improved our public API reference documentation. Better descriptions, more clarity, easier to follow. https://learn.lexer.io/api-documentation
Salesforce Marketing Cloud: More activation option support
Added additonal support for "integer" columns in the Salesforce Marketing Cloud data extension activation. In addition to the existing “float” columns support. https://learn.lexer.io/integrations/salesforce-marketing-cloud
Klaviyo: Create a new list
The Klaviyo integration now has the option to create a new list as part of your audience activation. https://learn.lexer.io/integrations/klaviyo
Klaviyo: Upgraded to v3 API
Upgraded to the latest Klaviyo API, v3. This update is automatically applied to all client hub who have Klaviyo integrated. Preliminary indicators show that speed of inbound profile enrichment and outbound activation jobs have both increased, with some up to twice as fast. https://learn.lexer.io/integrations/klaviyo
Campaign Monitor: New send events
The Campaign Monitor integration now supports email send events and includes campaign information on send, open, and click events. https://learn.lexer.io/integrations/campaign-monitor
Respond: Bug fix
Respond: we fixed a bug causing public Facebook Comments from appearing as deleted.
Datasets: Filtering and Alphabetical Datasets
The Dataset list can now be filtered and is sorted alphabetically. https://learn.lexer.io/docs/dataset-management
Shopify: Import Inventory data
The Shopify integration now allows Inventory data to be imported into Shopify Datasets. https://learn.lexer.io/docs/dataset-management
My Guest List: Improved notifications
Disabled the checking of disconnections for My Guest list. This reduces the number notifications in a client’s inbox. https://learn.lexer.io/integrations/myguestlist
Facebook API upgraded
The Facebook marketing activation and CAPI integration have been updated to version 19 of the Facebook Marketing API. This Facebook CAPI integration will now send order ids (if available) as event_id in CAPI events. This enables Meta to automatically de-duplicate server and pixel events provided that the pixel is configured with a matching event_id.
SFTP: Bug fix
Fixed a bug in the SFTP activation related to Attrs key error.
Emarsys: A/B testing bug fix
Want to delve deeper into your campaign audiences from Emarsys, now you can with a more granular ability to differentiate audiences sent from Emarsys. Emarsys A/B testing campaigns for example were being recombined when sent to the Hub. We have adjusted this so all audiences have distinct names that differentiate them from one another in the Hub. Read more about this update and how these A/B splits are presented in the Hub in our Emarsys Learn article.
DotDigital: New data field
DotDigital activations will no longer automatically generate a new data field based on the activation's audience tag name. This change was made due to DotDigital's new restriction on the number of fields allowed per account, which affects the number of activations from Lexer.
Facebook CAPI: now supports order ID
The Facebook Conversions API (CAPI) integration now supports including an “order_id” in the events sent to Meta. This includes order IDs which help Meta match to or de-duplicate events. https://learn.lexer.io/integrations/facebook-online-conversions
Emarsys: Unopened or clicked campaigns
Our Emarsys integration now supports loading Campaigns that are sent but not yet opened or clicked into the Campaign Event Attributes.
Activity: Bug fixes
We fixed a bug preventing you from seeing the filtered list of NPS responses.
Attentive: Bug fixes
Fixed processing of Attentive campaign names that appear under the “SMS Campaigns Sent” and “SMS Campaigns Clicked” attributes.
Contact: Edit queues more easily
Editing queues just got a whole lot easier! You can now edit your queue directly from the Contact workflow instead of needing to navigate to Segment. This is a huge time saver when you’re still figuring out the brief and details of you’re workflow. Once edited, your contact workflow will automatically regenerate any existing messages using your updated brief/configuration.
Google CAPI: Upgraded Google's API
We have upgraded Google's API version to version 14.
Facebook Ads: Bug fixes
Fixed a bug with the integration of Facebook Ad accounts that prevented some users who had “non-owner” access to at least one other Ad account from connecting the accounts they did own.
Attentive: Bug fixes
Fixed several issues that were preventing the Attentive activation from working properly. The Attentive activation is now more robust and every SMS subscribed profile imported from Attentive should now have a mobile/phone attribute.
Google Ads: Bug fixes Copy
Clients will now receive less account disconnection emails from the Google Ads integration.
Contact: Reports launched 🚀
Contact reports have been launched! 🎉 Measure the impact of proactively engaging customers with Lexer’s AI Messaging tool. Understand your team’s activity (messages sent, active users) and the impact to revenue (conversion rate, sales generated, revenue per message sent).
Google Ads: Version update
Updated the Google Ads API version: We have added additional terms and condition into Google Ads activation and upgraded Google Ads to use version 15. If you have a Google Ads integration, you will need to accept Google's new terms within the Hub.
Serve: QR code POS profile lookup
Serve now makes it easier to look up customers in your Point of Sale (PoS) system. You can now click the QR Code icon in the top left corner of the profile page to view a QR Code that is scannable by most Barcode scanners. Scanning this QR Code will enter the customer’s email address into your PoS system for easy lookup.
Serve reports: Serve team engagement
We added a new “Surveys Conducted” chart to the Serve Team Engagement report. This chart counts the number of form submissions completed by each Serve form configured in this hub. It helps managers and head office understand which surveys are being used by their retail staff and the number of profiles that have been updated with new information collected in these surveys.
Serve: Conversion report launched 🚀
Serve Conversion Report has been deployed! Serve Conversion reports will empower you to measure the effectiveness of your sales performance and understand how retail store teams are serving their customers using different benchmarks eg. conversion rate, total orders etc.
Serve report: Improvements
Serve reports now have the ability to filter by:
- Team
- Location
These filters persist across report pages. You can also now use the URL to share reports. Anonymous visits are included on reports by inferring the client from the customer or the store location.
LiveRamp: Timestamp
Our LiveRamp integration now appends a timestamp to the exported file name to LiveRamp. This should result in quicker processing of these files by LiveRamp.
Serve: Reports launched 🚀
Total Vistors and Team Engagement Serve reports have been added to the Hub 🚀
Measure and understand how retail store teams engage with their customers using our clienteling product Serve. We have a serve article outlining how these reports work 👉 here.
Braze: Uppercasing Email SHA
Added a new feature to the SHA256 “transformer” in Activate that allows any attribute to be uppercased before being hashed. This allows Activate to better support custom hashing strategies for things like email addresses.
Lexer schemas: Updates to the example data
Updated the example data in the lexer-schemas repository to demonstrate how to use the required email_id field in the email marketing event schemas.
Segment: Improved loading speed
We've improved the loading speed when you first open Understand > Segment. We’ve optimised how we retrieve all of the segments in your hub so it’s lightning fast ⚡️.
Integrations: Email notifications
We ✨fixed✨ an issue preventing email notifications from sending when integrations become disconnected.
Facebook pages: Disconnection status
We encountered an issue in how we check the connection status of Facebook pages, this has been ✨fixed✨. Our status check was looking for a permission that no longer exists, which caused a number of pages to incorrectly appear as disconnected.
Twitter: Issues responding
We fixed an issue preventing users from responding to Forms in Twitter message conversations. This impacted messages consumed using the new V2 integration.
Team: Duplicate groups
We fixed an issue causing duplicate groups to appear on users in your team.
Lexi: General bug fixes
We made a few improvements to how Lexi presents errors and tooltips.
Klaviyo: Subscription status
A new subscription status for Klaviyo has been rolled out.
DotDigital: Unsubscribing profiles
You can now activate a list that will Unsubscribe clients from your DotDigital address book making it way easier to keep your address book up to date.
Datasets: Bug fix
There was an issues showing when navigating Datasets as it was loading. This has been ✨ resolved ✨.
DotDigital: Address book
We've added an additonal activation option that lets you maintain, append, or remove profiles with DotDigital "Address Books". https://learn.lexer.io/integrations/dotdigital
Forms: Colors and Files
Two form improvements have been rolled out 🚀:
- We've added a new colour option in the Design settings to color question inputs 🎨 This has resolve an issue some clients were having where inputs were not visible if brand/background colours are the same.
- Exporting form responses as a CSV didn't include information about files submitted with the form. This has been ✨fixed✨ File attachments received in form submissions are now shown in the CSV Export.
Listen: Increased search range
We increased the searchable date range from 90 to 95 days 🔍 This allows you to query conversations across an entire 3 month period!
Datasets: Payloads are now interactive
Datasets introduces an interactive view for individual records payloads. This feature streamlines the process of delving into extensive or intricate events, helping you quickly locate the specific field you need.
Lexi: Beta access
We gave our clients beta access to Lexi Insights in Segment and Track. Reach out if your want to join the Beta program.
Forms: Class names added for questions and improved mobile scalability
To make it easier for users to add custom CSS, we've added additional class names for each question that they can use to target specific questions. These class names will be applied to the top level card, elements inside can be targeted using CSS. Check out the Learn article to read more about it.
We have also way scale questions display when resized on mobile devices.
Forms: Radio inputs bug
We fixed a presentation bug that made it appear as though radio inputs were not selected.
Mr Yum: Re-connection fix
✨Fixed✨ the account reconnection process for the Mr Yum Connect tile. The tile was creating new accounts rather than updating the tokens for the existing accounts.
Logs: Improved table UI
Enhanced the Logs user experience with a subtle update that now seamlessly refreshes the table when new logs arrive or an existing log changes state. A nice little UI improvement.
Schemas: Improved csv_to_ndjson examples script
In the "csv_to_ndjson" example script within Lexer-Schemas, we've introduced enhanced support for CSV files that commence with UTF "BOM" characters. This improvement particularly benefits CSV files exported from applications like Excel.
Listrak: Large backloads are now possible with Listrak
Improvements have been made to the Listrak integration to allow much larger backloads of data via the back-end.
DotDigital: Number of calls reduced
To make sure we are in line with DotDigital requirements, and avoid rate limiting, the number of calls made has been reduced.
Bronto: Retired
The Bronto integration has been retired.
Datasets: Country field updated
The [.code]country[.code] field on Customer records in datasets now also supports countries encoded in ISO 3166-1 alpha-3 (e.g. “AUS”, “NZL”, “USA”, “SGP” etc).
CDP: Currency symbols have been updated
We've updated how currency symbols are displayed in Segment, Compare, Track.
Logs: Data monitoring logs launched 🚀
We've released a brand new feature, ✨Logs✨. Data monitoring in the Hub just became even easier with Logs. It offers a quick overview of your data loading and processing log statuses. But Logs isn't just for monitoring; it's a valuable troubleshooting tool too, ensuring faster issue resolution with our Lexer team. Prepare to revolutionize your data management experience!
Smart search: Brand added as a new default field
Added “brand” as a default field for Products in Smart Search.
Forms: Pre-fill form details with hidden fields
Users can now send forms to customers containing hidden fields in the form URL 🚀
- Removes the need to ask for known information such as the email address.
- Learn more here
Segment: Search logic improvements
We’ve improved the search logic in the attribute picker to better match and display what you’re looking for!
- Attribute matching and sorting has been improved to better match your keywords
- We increased the number of Matched Attributes to improve discoverability
Compare: Reduced whitespace between elements
We ✨fixed✨ an issue causing the Attribute Comparison in Compare to have a too much space between components.
Datasets: Clear data and Load data buttons added
New buttons have been added to Datasets to allow you to clear and load data.
- Clear Data: Starts a job that will remove data from the dataset, the dataset itself wont be deleted. This may take up an hour and can't be undone.
- Load Data: Begins a job that will load new profile data to your dataset. This may take up an hour. Once you start you can't re-run it until finished.
Shopify: Huge speed improvement 🚀
Implemented an enormous speed improvement for our Shopify integration. We are now able to backload 5.5M orders in 5 days. This was accomplished by removing the dependency on the "transactions" stream that involved making an individual GET request for every single order in the "orders" stream.
Shopify: Updated store name attribute
Implemented a new Store Name attribute for Shopify because Shopify deprecated the previous attribute
Emarsys: Bulk import update
Added a capability to the Emarsys integration to allow bulk imported contacts to be pulled into Lexer.
Forms: File Upload question added
Users can now add File Upload questions to capture files (images, pdfs etc) in their forms. Customers can upload a product image, receipt, or other document as part of their forms submission. Users can download these files when viewing the form message in Listen or Respond. Files are not yet accessible in the Form Summary CSV export or as Attributes in Segment.
Forms: Iterative improvements
We’ve made a few improvements to our Form Builder!
- Date questions have been updated with new types of input validation based on before/after logic.
- All questions updated with more dynamic validation error messages to explain submission errors.
- Dropdown questions now support ‘other’ option to capture free form responses.
Compare: Improved readability
Compare results were being displayed as a profile count. To improve the readability of these stats, this was changed to percentage of the total profile count for the attribute. For example in the data shown above, 53% refers to the 3,648 profiles that are considered high value last year out of a total of 6,932 profiles with this attribute across all time periods.
Compare: Attributes not showing in the attribute picker
✨ Fixed ✨ an issue preventing some attributes from appearing in the attribute picker.
Respond: Templates not formatting properly
Fixed an issue causing templates to insert without new line formatting.
CDP: Public Git repository lexer-schemas published
Lexer's [.code]lexer-schemas[.code] Git repository was published 🎉. This repository describes Lexer's public data ingestion API's and will be a great resource for anyone wanting to upload their own data. This repository also contains example Python scripts explaining how to validate your data against the schemas and upload them using the bulk write API.
You can access these schemas in a few different formats:
Facebook: Facebooks API upgraded to v16
We have upgraded Facebook APIs across all Lexer products (Activate, Respond, Conversions API) to v16 as part of regular maintenance.
CDP: 12 month Spend Decile attribute updated
Improved the 12 month Spend Decile attribute so that it no longer includes profiles with a $0 spend in the last 12 months.
- These $0 spend profiles were highly skewing the distribution resulting in gaps in the 1-10 spend decile range.
- This has begun to be rolled out to clients.
- It will also automatically be applied for any new clients setup from the 27th July 2023 onwards.
Yotpo: Yotpo's API service disruption
We have backloaded all missing Yotpo data for all clients as a resolution to Yotpo’s API service disruption dated July 14.
WooCommerce: Bug fix
Some WooCommerce data was missing for some clients. This issue has been ✨ resolved ✨ and all data retroactively updated.
Emarsys: Empty field was causing and error
We've fixed an error with Emarsys that appears when the data files we receive are empty.
Facebook: The Facebook API was upgraded
We've upgraded the Facebook API we use for Conversions to version v16 as part of regular maintenance.
Segment: We've improved search performance 🚀
Segment queries are now much faster. Searches in the Segment builder should show summary results in a few seconds. This update has been deployed to all Hubs.
Segment: We've updated the way we display Spend, Count, Orders and Percentage attributes
We updated the default display type for Spend, Orders, Counts, and Percentage attributes to show the average value instead of the percentile chart. The goal here is to make it easier to quickly analyse your search results.
Respond: Templates bug fix
We fixed an issue causing templates to insert into the rich text editor with incorrect formatting.
CDP: UI bug fix
We fixed an issue causing the labels on some tabs (eg in Settings and Respond) to be pushed out of view, cutting off the text.