The past 12 months for consumer-packaged goods (CPG) brands have been undeniably challenging with the decline in consumer spending power clashing head-on with rising raw material prices. But now, with costs becoming more manageable and inflation rates slowing, the outlook for CPGs is showing some green shoots.
Against this backdrop, the role of Insights & Analytics teams within CPGs has become increasingly important. Tasked with helping the business understand changing shopper preferences and expectations, they provide the vital intelligence that brands need to respond confidently and quickly to emerging trends and new opportunities.
To do that effectively, Insights & Analytics teams need access to data from a wide variety of sources. Primary research, qualitative and quantitative analysis of the market and consumer behaviours, is frequently called upon, as is sales (or transactional) data. One data source that is used much less often, though, is planogram data – something that provides insight into the layout and arrangement of a CPG’s products within a retailer’s stores.
Used well, planogram data can add another dimension to a brand’s understanding of the market. If one category has seen extraordinary sales growth, for instance, the first question that a CPG might ask is whether that’s the result of increased shopper need or direct intervention by the retailer. If the category has been given more space, or moved to a more prominent position, for instance, then shoppers might be driving growth, but only as a result of actions taken by a retailer, something CPGs will only see in that retailer, rather than a wider economic trend.
So, why isn’t planogram data used by Insights & Analytics teams more often? Why isn’t it yet seen as one of the default resources for those teams to draw upon?

One of the main issues here is that of complexity. By their nature, planogram datasets are incredibly intricate; even a planogram for a smaller store can include layout information on thousands of individual products. When you multiply that across the entirety of a retailer’s store estate, and incorporate different formats into the mix, you end up with what is typically a gigantic and hard-to-manage dataset – one that can easily be billions of rows long.
That dataset isn’t static, either. Whether it’s seasonal updates, range reviews/assortment changes, delists, or any other factor at work, planograms are always changing. Weekly updates are commonplace, meaning that not only is there a lot of data to deal with, but there’s also always something new to learn from it too.
This isn’t simply a “human” problem, either. Until recently, it wasn’t even possible to structure this amount of data effectively; with so much information in play, the amount of processing power required to sort it into a useful model was beyond most organisations. Only with significant advances in technology have we seen data engineering hit the level at which planogram data can be converted into something truly useful.
It's those technological gains that underpin Planogram Publisher, an easy-to-use application that provides brands with actionable insights into how their products are being displayed in-store.
For Insights & Analytics teams, one of Planogram Publisher’s primary benefits is to solve that problem of complexity outlined above. Providing instant access to planogram data across a retailer’s store estate, Planogram Publisher generates engaging visualisations of shelf layouts that make it easy to understand exactly what customers see when they walk into a store.

Even in isolation, that capability provides Insights & Analytics teams with an easier way to keep up with layout changes and their potential impact on sales performance. In addition to those visualisations, however, Planogram Publisher also pulls a retailer’s planogram data directly into a CPG’s data lake including marrying up with other reporting mechanisms and datasets from other place planning software including JDA and Nielson Spaceman.
In turn, that enables Insights & Analytics teams to use planogram data in tandem with other sources of information. Say they want to know when sales have spiked despite their space at the shelf remaining the same. Perhaps they want to understand why a range review hasn’t led to the decline in volumes they might have expected. Planogram Publisher makes that possible, and without the extra effort that answering those questions would normally entail.
With Planogram Publisher, Insights & Analytics teams can:
More than anything else, Planogram Publisher provides a vital new source of information – one that Insights & Analytics teams can use to supplement traditional datasets and supercharge their understanding of the market.
Nick Theodore is the CEO of VST, the creators of Planogram Publisher.
Planogram Publisher is available exclusively on the Tesco Media and Insight Platform.
| Cookie | Description |
|---|---|
| cli_user_preference | The cookie is set by the GDPR Cookie Consent plugin and is used to store the yes/no selection the consent given for cookie usage. It does not store any personal data. |
| cookielawinfo-checkbox-advertisement | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Advertisement" category . |
| cookielawinfo-checkbox-analytics | Set by the GDPR Cookie Consent plugin, this cookie is used to record the user consent for the cookies in the "Analytics" category . |
| cookielawinfo-checkbox-necessary | This cookie is set by GDPR Cookie Consent plugin. The cookies is used to store the user consent for the cookies in the category "Necessary". |
| CookieLawInfoConsent | The cookie is set by the GDPR Cookie Consent plugin and is used to store the summary of the consent given for cookie usage. It does not store any personal data. |
| viewed_cookie_policy | The cookie is set by the GDPR Cookie Consent plugin and is used to store whether or not user has consented to the use of cookies. It does not store any personal data. |
| wsaffinity | Set by the dunnhumby website, that allows all subsequent traffic and requests from an initial client session to be passed to the same server in the pool. Session affinity is also referred to as session persistence, server affinity, server persistence, or server sticky. |
| Cookie | Description |
|---|---|
| passster | Set by Passster to remember that a visitor has entered a correct password, so they don’t have to re-enter it across protected pages. |
| wordpress_test_cookie | WordPress cookie to read if cookies can be placed, and lasts for the session. |
| wp_lang | This cookie is used to remember the language chosen by the user while browsing. |
| Cookie | Description |
|---|---|
| fs_cid | Set by FullStory to correlate sessions for diagnostics and session consistency; not always set. |
| fs_lua | Set by FullStory to record the time of the user’s last activity, helping manage session timeouts. |
| fs_session | Set by FullStory to manage session flow and recording. Not always visible or applicable across all implementations. |
| fs_uid | Set by FullStory to uniquely identify a user’s browser. Used for session replay and user analytics. Does not contain personal data directly. |
| VISITOR_INFO1_LIVE | Set by YouTube to estimate user bandwidth and improve video quality by adjusting playback speed. |
| VISITOR_PRIVACY_METADATA | Set by YouTube to store privacy preferences and metadata related to user consent and settings. |
| vuid | Vimeo installs this cookie to collect tracking information by setting a unique ID to embed videos to the website. |
| YSC | Set by YouTube to track user sessions and maintain video playback state during a browser session. |
| _ga | The _ga cookie, installed by Google Analytics, calculates visitor, session and campaign data and also keeps track of site usage for the site's analytics report. The cookie stores information anonymously and assigns a randomly generated number to recognise unique visitors. |
| _ga_* | Set by Google Analytics to persist session state. |
| _gid | Installed by Google Analytics, _gid cookie stores information on how visitors use a website, while also creating an analytics report of the website's performance. Some of the data that are collected include the number of visitors, their source, and the pages they visit anonymously. |
| _lfa | This cookie is set by the provider Leadfeeder to identify the IP address of devices visiting the website, in order to retarget multiple users routing from the same IP address. |
| __Secure-ROLLOUT_TOKEN | YouTube sets this cookie via embedded videos to manage feature rollouts. |
| Cookie | Description |
|---|---|
| aam_uuid | Set by LinkedIn, for ID sync for Adobe Audience Manager. |
| AEC | Set by Google, ‘AEC’ cookies ensure that requests within a browsing session are made by the user, and not by other sites. These cookies prevent malicious sites from acting on behalf of a user without that user’s knowledge. |
| AMCVS_14215E3D5995C57C0A495C55%40AdobeOrg | Set by LinkedIn, indicates the start of a session for Adobe Experience Cloud. |
| AMCV_14215E3D5995C57C0A495C55%40AdobeOrg | Set by LinkedIn, Unique Identifier for Adobe Experience Cloud. |
| AnalyticsSyncHistory | Set by LinkedIn, used to store information about the time a sync with the lms_analytics cookie took place for users in the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
| bcookie | LinkedIn sets this cookie from LinkedIn share buttons and ad tags to recognise browser ID. |
| bscookie | LinkedIn sets this cookie to store performed actions on the website. |
| DV | Set by Google, used for the purpose of targeted advertising, to collect information about how visitors use our site. |
| gpv_pn | Set by LinkedIn, used to retain and fetch previous page visited in Adobe Analytics. |
| lang | Session-based cookie, set by LinkedIn, used to set default locale/language. |
| lidc | Set by LinkedIn, used for routing from Share buttons and ad tags. |
| lidc | LinkedIn sets the lidc cookie to facilitate data center selection. |
| li_gc | Set by LinkedIn to store consent of guests regarding the use of cookies for non-essential purposes. |
| li_sugr | Set by LinkedIn, used to make a probabilistic match of a user's identity outside the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
| lms_analytics | Set by LinkedIn to identify LinkedIn Members in the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland) for analytics. |
| lpv[AccountID] | This cookie is set by Salesforce Marketing Cloud Account Engagement. Prevents counting multiple page views within a short window to avoid duplicate tracking. |
| NID | Set by Google, registers a unique ID that identifies a returning user’s device. The ID is used for targeted ads. |
| OGP / OGPC | Set by Google, cookie enables the functionality of Google Maps. |
| OTZ | Set by Google, used to support Google’s advertising services. This cookie is used by Google Analytics to provide an analysis of website visitors in aggregate. |
| s_cc | Set by LinkedIn, used to determine if cookies are enabled for Adobe Analytics. |
| s_ips | Set by LinkedIn, tracks percent of page viewed. |
| s_plt | Set by LinkedIn, this cookie tracks the time that the previous page took to load. |
| s_pltp | Set by LinkedIn, this cookie provides page name value (URL) for use by Adobe Analytics. |
| s_ppv | Set by LinkedIn, used by Adobe Analytics to retain and fetch what percentage of a page was viewed. |
| s_sq | Set by LinkedIn, used to store information about the previous link that was clicked on by the user by Adobe Analytics. |
| s_tp | Set by LinkedIn, this cookie measures a visitor’s scroll activity to see how much of a page they view before moving on to another page. |
| s_tslv | Set by LinkedIn, used to retain and fetch time since last visit in Adobe Analytics. |
| test_cookie | Set by doubleclick.net (part of Google), the purpose of the cookie is to determine if the users' browser supports cookies. |
| U | Set by LinkedIn, Browser Identifier for users outside the Designated Countries (which LinkedIn determines as European Union (EU), European Economic Area (EEA), and Switzerland). |
| UserMatchHistory | LinkedIn sets this cookie for LinkedIn Ads ID syncing. |
| UserMatchHistory | This cookie is used by LinkedIn Ads to help dunnhumby measure advertising performance. More information can be found in their cookie policy. |
| visitor_id[AccountID] | This cookie is set by Salesforce Marketing Cloud Account Engagement. Unique visitor identifier used to recognize returning visitors and track their behavior. |
| visitor_id[AccountID]-hash | This cookie is set by Salesforce Marketing Cloud Account Engagement. Secure hash of the visitor ID to validate the visitor and prevent tampering. |
| yt-remote-connected-devices | YouTube sets this cookie to store the video preferences of the user using embedded YouTube video. |
| _gcl_au | Set by Google Tag Manager to store and track conversion events. It is typically associated with Google Ads, but may be set even if no active ad campaigns are running, especially when GTM is configured with default settings. The cookie helps measure the effectiveness of ad clicks in relation to site actions. |