1. What are the different types of data extensions?

Standard -  This is a basic one, which is used to create a new data extension and to include the fields as needed

Filtered - Select an existing data extension and filter out the records by defining a criteria

Random - Select a percentage or number of subscribers from a source data extension

2. What is the difference between AMPscript and SSJS(Server-Side JavaScript)?

AMPscript is mainly used for Personalization. It is easy to learn and includes simple if-else statements.

SSJS is for Integrations and to handle JSON requests/responses effectively. 

3. Mention the different entry sources in Journey builder.

Data Extension, Salesforce Data, Cloudpages, Event, and API

4. Explain the difference between Lookup Vs LookupRows Vs LookupOrderedRows?

Lookup - Retrieve a single row from a DE

LookupRows - Retrieve a set of rows from a DE. The maximum is 2000.

LookupOrderedRows - Retrieve more than 2000 rows and sort them based on a field(s).

5. What is the syntax for Synchonized objects DE in SQL?

Querying at Parent Business Unit - Select Name from Contact_salesforce

Querying at Child Business Unit - Select Name from Ent.Contact_salesforce

6. What are Personalization strings?

String-based identifier enclosed in a delimiter (%%), which can be included in messages or landing pages. 

There are two types - 

Attribute Strings - Derive the values from a field in a data extension or an attribute related to Contact or Subscriber.

System Strings - System-defined strings which display output based on the context of contact or subscriber.

Example - emailaddr, MOBILE_NUMBER, etc.

7. What is the difference between Goal criteria and Exit criteria?

Goal - Define the goals as needed, so that you get to know how your customers interact with the brand. It can also act as exit criteria, once the goal is reached.

Exit - If you want the contacts to exit the journey based on specific criteria.

8. What is the Purpose of using different Business units?

- Maintain Separate Branding (Based on Regions, Geography, etc.)

- When the Information is not to be shared across Business units

- Helps to keep the data organized

- Restricts data access to the users from other BU

9. Explain the different data models in SFMC.


- Used when there are less than 500,000 records

- A limited set of attributes

- Require lower data import speed 

- Setup Welcome email and double opt-in options once the Subscriber is added

Data Extensions -

- Used when there are equal or greater than 500,000 records,

- No limit on the attributes

- Require high import speed

- Maintain relational/historical data

- Ability to use Publication lists to manage unsubscribes.

10. What are the various options to handle unsubscribes when dealing with business units in SFMC?

Enterprise-level - If unsubscribed, the subscribers also get unsubscribed from all the Child business units

Child level - Subscribers are only unsubscribed from the current child business unit

11. Write a Query to display all the 'emails opened in last 30 days'.

SELECT j.JobID, j.EmailName, o.EventDate, s.EmailAddress, s.SubscriberKey 
FROM _job j JOIN _open o on j.JobID = o.JobID
JOIN _subscribers s on o.SubscriberID = s.SubscriberID
WHERE o.IsUnique = 1 AND o.EventDate > dateadd(d,-30,getdate())

12. Mention the different types of Entry settings, splits, and waits in Journeys.

Entry settings

- No re-entry

- Re-entry at any time

- Re-entry only after exiting


- Decision split: define criteria to filter out the contacts

- Engagement split: Determine the next step based on Opens/Clicks

- Random split: Split the contacts randomly to determine which email version performs better


- Wait by Duration: Define the wait time, after which the contact will move to the next step

- Wait by Attribute: Evaluate the contacts based on the attribute data 

- Wait by Date: Specify a date

13. What is the difference between Journey builder and Automation studio?

Journey builder

- Multiple entry sources

- Create/update the Sales/Service cloud object records

- Einstein-related features 

- Has additional communication channels than Automation Studio

- More options to interact with the Sales/Service cloud


- Involves Data management activities, SSJS Scripts, and FTP

- Journey can be included as one of the steps

- Ability to Import reports from Sales/Service Cloud

14. How will you set a Journey to send out the communications only between 9-5?

'Delivery window' option can be used to specify the time.

15. Mention the components of Send Classification.

Sender profile - Includes the 'From Name' & 'From Email'


Delivery Profile - Specify the IP address to use, physical mailing address mentioned at the bottom of an email

CAN-SPAM classification

  • Commercial 

- Includes promotions or advertisements to promote the products or services
- Must include an unsubscribe mechanism

  • Transactional

- Transactional in nature. Example - Password reset, Transaction receipts, etc.
- Optional to have an unsubscribe feature

16. What are the steps for the Contact Deletion process?

Initiate process -> Suppression Period -> Deletion
This process can only be performed at the Parent business unit, not at the Child level.
The default suppression period is 14 days, but can be modified as needed

17. What are the different levels of unsubscribes?

List level - unsubscribe from a specific list
Master level - unsubscribe at the account level
Global level - unsubscribe from all the accounts

18. How to select the subscribers with the highest referral points using SQL (Note - There can be multiple subscribers in a Data extension)

Use 'row number' function in SQL

19. What is IP Warming?

It is a process to build up (for at least 30 days) the reputation of your Marketing Cloud account, by sending the emails from your new IP starting with a small volume, and then increasing the volume gradually. This will help to improve the deliverability rates.

20. What are Publication Lists?

It is a list of subscribers who have opted-in to receive the communications.

For example,  Consider 3 lists - Newsletter, Alerts, and Weekly updates.
If the subscriber opts-out of the Newsletter, then they can still receive the communication from the other 2 lists.

21. Mention different ways to segment the data.

Data Filters - Used to filter out the records from a Data Extension

SQL - Set the conditions using the WHERE statement

22. What is the difference between Core and Platform library?

Core library is mainly used for interactions with the Email Studio via SOAP API call.

Platform functions are similar to AMPscript, used for interaction with webpages, API, and other applications.

23. How to include personalization in an email without using AMPscript?

Use the option 'Dynamic Content' under the Content Builder.

24. What is the difference between iif() and if, in AMPscript?

iif(condition,true,false) - Output can be stored in a variable
if - simple conditional statement

25. What are the steps to send the data from SFMC to FTP using automation studio?

  • SQL (will store the data in a Data extension)

  • Data Extract (Data extension extract option)

  • File Transfer (Safehouse to FTP)

26. What are Auto-suppression lists?

Used to suppress the sends automatically to all the subscribers included in this list. It can include competitors' or subscribers' addresses with bad deliverability issues.

27. What are the different ways to Unsubscribe a subscriber?

It can be done using any of the below options:

- Manually select the subscriber under 'All Subscribers' 
- Use the LogUnsubEvent property 
- Create the Subscriber object using AMPscript
- Feedback loops

- Setup Reply mail management to handle the requests

28. How to Create/update/retrieve records to/from the Service cloud?

Use AMPscript functions - CreateSalesforceObject, UpdateSingleSalesforceObject & RetrieveSalesforceObject

29. What is the difference between InsertDE and InsertData?

InsertData - Insert the record into a data extension and Output is stored in a variable

InsertDE - Insert the record but does not result in any output.

30. How will you capture the data in SFMC from a 3rd party form?

There are various options to achieve this :
- Some form handlers come with Salesforce connectors which requires you to enter the credentials, select the DE and 
map the fields. Other form handlers make a POST request to Marketing Cloud using POST URL, Client ID & Data extension external key.

- Embed a Cloudpage in an external website using iFrame

- Connect the form to Sales/Service Cloud and pull the data into SFMC using Marketing Cloud Connector
- Leverage APIs