Bulk edit and upload segments in Adobe Omniture

Abhi_Ramani 26-10-2018

Our use case requires the creation of bulk segments (10s of thousands of identifiers) and frequent maintenance of the same. Can you build this functionality akin to an excel upload?

5 Comments (5 New)

I can understand that creating a bunch of segments is a mess. But is Excel really a solution? maybe it can solve some simple cases, but as soon as want to have different containers and/or conditions, Excel might not fit.

Can't you use the API? You can even use your own customized excel to create the calls and send it to the endpoint.

Create and/or modify segments by

API 1.4 -> analytics-1.4-apis/index.md at master · AdobeDocs/analytics-1.4-apis · GitHub

API 2.0 -> analytics-2.0-apis/segments.md at master · AdobeDocs/analytics-2.0-apis · GitHub


@Ursboller is correct in that the API is the best way to bulk-create segments although API V2 doesn't currently support segment creation but will soon.

Unfortunately, the use case for creating either tends of thousands of segments or tens of thousands of identifiers within a segment almost always indicates a misuse or misconfiguration of segments in attempt to solve implementation problems.

I'm not sure whether the original idea is talking about making tends of thousands of segments or making a smaller number of segments but having tens of thousands of identifiers in those segments. Either way, there are going to be major performance problems with doing so.

In the case of tens of thousands of segments, segment management becomes very difficult and segment retrieval and search functionality will slow to a crawl once the number of segments goes over the 12-15K mark.

In the case of a segment with 10s of thousands of identifiers in it, this will create major performance problems. A far better solution is to use classifications (which can be uploaded via CSV file by the way) to group thousands of identifiers into a few simple categories.

Bad Example of Defining a Segment:   You have 10,000 visitors that are loyal and you want to make a "loyal visitors" segment so in your loyal visitors segment you list all 10,000 visitor IDs in a contains clause. This will perform extremely poorly as all the parsing of the identifiers and comparisons must be done at segment run time.

Good Example of Defining a Segment:  You classify the 10,000 visitor IDs with an "IsLoyal" column and then in your segment you do a simple comparison on the IsLoyal column. This will perform much better than the bad example above.

I recommend users reconsider making either 10s of thousands of segments, or making segments with 10s of thousands of identifiers in them.

Abhi_Ramani 27-10-2018

Hi both, thanks for your updates. Allow me to further clarify our use case.

We use Adobe Analytics to measure the instrumented performance of our self service web portal. Each unique visitor to our portal is identified by an internal ID, lets call this X. There are different types of customers, let's call them X1, X2, X3. There are ~100s of X1 customers (which we might be able to swing adding to a segment), ~1000s of X2 customers (which we need a better solution), and ~10s of thousands of X3 customers (which we definitely need a better solution).

We will look into the API approach you have recommended, appreciate the suggestion.

Also, can you share a pointer to documentation that explains how to use classifications and how this is different from segmentation?

Our end goal is to understand how different types of customers use our self service portal. We started with the segment definition process for the same, but i am open to other ways of accomplishing the same goal.


Hi Abhi Ramani

If you have a 1:1 match of Internal ID to segments then classification is really a far easier way!

here are some links that might help:

- Classifications

- Classifications (a.k.a. SAINT) [Inside Omniture SiteCatalyst] | Adobe Blog

Basically you add a new dimension to your "Internal ID" that has the value of the corresponding group (X1/X2/X3). after classification upload you can use those groups just as any other dimension within Adobe Analytics, make segments like "where group = X1).

yohs86722094 22-04-2019

Classifications are not contemporaneous but they do work once you have to group large numbers of customers.

One thing to note we discovered Adobe enforces a 1MB file size limit for uploads, so the only way to upload large classifications files is to use SFTP which (is not easy to get approval for in large enterprises.)