Adobe Campaign, Marketing Automation

How to extract data from adobe campaign

How to extract data from adobe campaign

Data analysts usually have their own analytics platforms where they sculpt raw data from various systems to create insights and nice charts for the management or quartely meetings. One way to extract data from the platform with little to no code is to use data extraction (file).

What data are usually extracted?

The most extracted data are logs from various marketing activities, consent changes, captured leads, survey results or any changes to recipient data done either by themselves or another system that could be integrated with platform. Marketing activities create logs and mostly revolve around folowing tables:

  • Deliveries nms:delivery – Deliveries that go out from the platform for any channel you have enabled.
  • Broad log nms:broadLogRcp – contains information on what communication is sent to a particular recipient and whether it was successfully delivered or not.
  • Recipient tracking log nms:trackingLogRcp – engagement events, such as clicks or opens, captured from communication.
  • Recipient exclusion log nms:excludeLogRcp – Contains information about all excluded recipients and the reason from particular communication.
  • Quarantine nms:address – Contains all quarantined recipients coming from hard bounces, soft bounces, manual input, any legacy suppression import, or users who marked communication as spam. Such records come back in the form of feedback loops and are automatically marked by Adobe Campaign as blacklisted.

How to extract data

How do we set up extract in a technical workflow? Simply prepare any data in your workflow that you want to export, either directly or through various transformations, such as joining data from another table or performing aggregate operations to get cumulative results. You can export data that is also saved in lists, created by one or multiple technical processes and collected throughout a certain time span (weekly, monthly).

Set up the data extract activity

At this point we have data in our workflow and we are ready to extract them.

Drag and drop the Data Extract (file) activity into the workflow. Now it’s time to set it up. Firstly, after we open the activity, we have to name the file that will be extracted. To add custom parameters from instance variables or the actual date, you can use JavaScript tags.

Adobe Campaign Classic - add current date to file name extract

The next step is to edit the file format.

Following the wizard steps, where we can add columns to the export, transform values using the expression builder (using aggregate functions if needed, string function, concatenate values and create new columns or map values), and where the expression builder is lacking, we can modify values with JavaScript.

We will set up also the destination format. Following is my usual settings I use for almost all of my extracts.

  • Output format: text – yes there is also CSV but hear me out. When we set up the CSV we cannot change the End of line character setting. This has to be amended depending on the target system OS. Windows typically uses CRLF (Carriage Return + Line Feed) as the newline sequence. Linux and Unix-based systems typically use LF (Line Feed) alone as the newline sequence and Macintosh CR (Carriage Return) line break types. This setting if set wrongly can cause that file won’t be imported.
  • Encoding: UTF-8 is a requirement when working with latin character sets.
  • String delimeter: When extracting free text, it’s possible to encounter a column separator within the text, causing issues during import. To address this, use a different column separator or add string delimiters, typically double quotes (“).
Adobe Campaign Classic - extract data encoding settings

On the last step of the wizard, where we can add additional data formatting functions such as simple transformations like upper case, lower case, or smart case. I often use this when exporting enumerations to map their numeric values to their text representation. To add a computed field, we click on the new button on the right side.

I have just recently found that you can also automatically let adobe campaign export labels of enumerations when checking the option “Export labels instead of internal values of enumerations”

Adobe Campaign Classic - extract activity JavaScript expression

Also as well as with delivery activity we have object modification script tab where we can set additional settings or zip the extracted file if needed. To read more about the file extract activity visit the official doucmentation or if case of any doupts visit experience league forum.

Oh hi there 👋
I have a FREE e-book for you.

Sign up now to get an in-depth analysis of Adobe and Salesforce Marketing Clouds!

We don’t spam! Read our privacy policy for more info.

#adobe campaign classic #JavaScript #workflow
Marcel Szimonisz
Marcel Szimonisz
MarTech consultant As a marketing automation consultant, I specialize in problem-solving, process automation, and driving innovation for clients' marketing platforms.

I hold certifications in Adobe Campaign v6 (3x certified) and Salesforce Marketing Cloud (5x certified), as well as 1x Salesforce Associate certified.

Moreover, I serve as a community advisor for Adobe Campaign, providing expert insights and guidance.

Beyond my professional pursuits, I explore various programming languages, CMSs, and frameworks, enhancing my technical expertise and staying at the forefront of industry advancements.
Take a look at our subscription offering in case you are looking for a Marketing Automation Consultant.

Leave a comment

Your email address will not be published. Required fields are marked *

Similar posts that you may find useful

Salesforce Marketing Cloud Tips
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

How to utilize polyfill functions in SFMC

1 minute read

Development in Salesforce Marketing Cloud’s SSJS can be very restrictive, especially when you’re already familiar with the latest EcmaScript6 JavaScript features. We can’t use object spreading or curly bracket functions {}=>() and many, many more. However, we can introduce certain very helpful functions that don’t exist in older versions of JavaScript. The way we do […]

Continue reading
Salesforce Marketing Cloud Tips
Salesforce Marketing Cloud, SFMC Tips & Tricks

How to query filtered data extension

less than a minute read

Easy way to segment your data is to use filtered data extension. Here we can use user interface to set up conditions as we like. When you want to add this newly filtered data extension to the SQL activity you will find that data extension cannot be found in the file browser. But it is […]

Continue reading
Salesforce Marketing Cloud Tips
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

How to refresh data extension records

1 minute read

You might have noticed that records are not refreshed automatically, which makes sense. However, there is no refresh button. Here are some helpful tips I’ve discovered on how to refresh records within the data extension while it’s open. Email studio In email studio it is failry easy you simply navigate to another folder and return […]

Continue reading
Adobe Campaign Classic: Do loops in the workflow
Adobe Campaign, Marketing Automation

Do Loops in Adobe Campaign worfklow

4 minutes read

At times, there may be a need to execute the same workflow or its parts in loops. I’ll guide you through the process of creating your very own “for loop” within the Adobe Campaign workflow. loop While loop A “while loop” programming construct used to repeatedly execute a block of code as long as a […]

Continue reading
Salesforce Marketing Cloud Tips
Marketing Automation, Salesforce Marketing Cloud, SFMC Tips & Tricks

Track links that are AMPScript variables

1 minute read

When you save links as part of an HTML code in an AMPScript variable, such as a paragraph containing a link to a page, you may face challenges in tracking these links. Salesforce offers a great feature that allows tracking of such links using the “httpgetwrap” inserted right before the URL protocol. When dealing with […]

Continue reading