Eloqua
Use GrowthLoop audiences and warehouse data for Eloqua shared lists, contacts, and custom data objects.
Connect this destination to export audience membership into an Eloqua shared list, or to write warehouse rows onto Eloqua contacts and custom data objects, for use in Eloqua campaigns.
This destination writes to your Eloqua account and is a good fit when you want to:
- Match contacts on email
- Make GrowthLoop audiences available as an Eloqua shared list
- Update Eloqua contact fields, including custom fields, for exported contacts
- Keep Eloqua contact fields up to date from a warehouse table
- Keep Eloqua custom data object records, such as orders or event registrations, up to date from a warehouse table
This maps to GrowthLoop Audiences, Journeys, and Syncs:
| Use it for | Audiences | Journeys | Syncs |
|---|---|---|---|
| Sending GrowthLoop audiences to Eloqua shared lists | ✓ | ✓ | |
| Creating and updating Eloqua contacts from a warehouse table | ✓ | ||
| Creating and updating Eloqua custom data object records from a warehouse table | ✓ |
Prerequisites
Make sure you have:
- An Eloqua account. If you do not have one, contact Oracle Sales.
- An Eloqua user with Advanced Users – Marketing permissions and API access.
- For custom data object syncs, the custom data object already set up in Eloqua.
Set up Eloqua as a destination
- In GrowthLoop, click the Destinations tab on the left sidebar.
- Click New Destination in the upper right corner.
- Search for Eloqua and click Add Eloqua.
NoteDon't see Eloqua when you try to add a destination? Reach out to [email protected] and we'll enable it.
- Enter the required information, then click Create.
| Field | Description |
|---|---|
| Destination Name | Name this destination in GrowthLoop. Use a name so your team recognizes its purpose, like "Eloqua Email". |
| Sync Frequency | Set the default export frequency (for example, daily or weekly). You can override this setting for individual exports. |
| Company Name (Site Name) | The value before the backslash in your Eloqua login (SiteName\Username). |
| Username | Username of an Eloqua account with API access. |
| Password | Password for that Eloqua account. |
GrowthLoop validates that it can load audience data to Eloqua. Eloqua then appears in your list of connected destinations.
Export to Eloqua
From within GrowthLoop, export from an audience or from a journey Destination Node. See Export an audience or Build a journey if you need more information on these steps.
After building or selecting an audience, click Export, then search for Eloqua. In a journey, add a Destination Node under Ads and select Eloqua.

Map contact identifiers
Map Email Address. Eloqua requires email to match contacts.
You can also map these optional fields:
| Field | Notes |
|---|---|
| First Name, Last Name | Contact name |
| Title, Company | Job title and company |
| Business Phone, Mobile Phone, Fax | Phone fields |
| Address Line 1, Address Line 2, Address Line 3 | Street address |
| City, Province / State, Postal Code / ZIP, Country | Location |
Send additional fields
Use Additional Fields to update any other Eloqua contact field, including your custom fields. For each field, select the column from your dataset and enter the Eloqua field name:
- Use the field's display name as it appears in Eloqua, such as
Lead Status, or its internal name, such asC_Lead_Status1. - If two Eloqua fields share the same display name, use the internal name.
- Empty values are skipped, so they never clear data already stored in Eloqua.
WarningIf an additional field doesn't exist in Eloqua or is read-only, such as
Date Created, the export fails and shows which fields to fix. Batches sent before the failure may have already updated some contacts, so correct the field names and rerun the export.
Configure the export
This is where you set the campaign type and schedule for audience exports. On a journey Destination Node, you set timing on the journey canvas.
| Setting | Audience export | Journey Destination Node |
|---|---|---|
| Export Name | Defaults to the audience name. That is the shared list name GrowthLoop creates in Eloqua unless you change it. | Required. Enter a name so you can find the export in GrowthLoop and Eloqua. |
| Campaign type | Choose a one-time or ongoing export. | The journey schedule controls when the journey runs and contacts are sent to Eloqua. |
| Schedule | Set frequency, start date, end date, and days of the week for ongoing exports. | Users reach this node when the journey runs. Add a Delay Node or set Criteria Evaluation to control timing. |
Export behavior
This is what GrowthLoop writes when you export an audience.
| Behavior | What happens |
|---|---|
| What GrowthLoop writes | Membership on an Eloqua shared list. Direction is GrowthLoop → Eloqua. |
| When it runs | GrowthLoop sends the export as a batch on the next successful run. An export that starts Now runs within about 15 minutes. Journeys send exports on demand when users reach the Destination Node. |
| Shared list | GrowthLoop creates a shared list with the export name, or uses an existing list with that name. |
| Match field | Email Address is required. |
| Contact fields | Mapped contact identifiers and additional fields are written to each exported contact. Empty values are skipped. |
| One-time exports | GrowthLoop sends current membership once. |
| Ongoing adds and removals | Ongoing exports add contacts who enter the audience and remove those who leave. |
| Deletes | GrowthLoop does not delete the Eloqua shared list. |
Create a sync in GrowthLoop
Create a sync from a warehouse table to write rows onto Eloqua contacts or Eloqua custom data object records. See Syncs for information on how to complete those steps.
Select an Object type:
| Object | Use it for | Sync modes |
|---|---|---|
| Contacts | Create and update Eloqua contacts | Insert, Update, or Insert or update |
| Custom data objects | Create and update records in an Eloqua custom data object, such as orders, subscriptions, or event registrations | Insert or update |
- In GrowthLoop, click Syncs on the left sidebar, then click New Sync.
- Under Sync settings, enter a Name, choose a Frequency, and choose an Update rule. Custom data object syncs always insert or update records, whichever rule you choose.
- Insert: Create new contacts only. Existing contacts are left unchanged.
- Update: Update existing contacts only. No new contacts are created.
- Insert or update: Create contacts that do not exist and update contacts that already exist.
- Under Source, select the Dataset / table that holds the fields you want to sync and the Dataset unique field(s). For Match field, select your email column for contacts, or the column that uniquely identifies each record for a custom data object.
- Under Destination, select your Eloqua destination as the Connection, and select Contacts or a custom data object as the Object type. Custom data objects are listed by name followed by (Custom Object). For Match field, select Email Address for contacts, or the custom data object field that uniquely identifies each record.
- Under Field mapping, map at least one field. For each row, select a Source field and the Eloqua Destination field. Click Add field for each additional field.
- Click Create sync.
- Open the sync and turn on Enabled.
To change an existing sync, update its settings or field mappings and click Save changes. If GrowthLoop asks how to apply newly mapped fields, choose Updates only to send values when they change, or Back-fill existing customers to send current values for every contact.
Syncs update Eloqua contacts and custom data object records. They do not add or remove contacts from a shared list. To manage shared list membership, export an audience.
Eloqua contact fields
Map Email Address, then map the contact fields you want to write.
| Destination field | Description |
|---|---|
| Email Address | Required. GrowthLoop matches contacts on email. |
| Any writable Eloqua contact field | Optional. GrowthLoop loads every contact field you can update in your Eloqua account, including custom fields such as Is Subscribed. Read-only fields such as Date Created are not listed. |
Eloqua custom data object fields
Map the field that identifies each record, then map the custom data object fields you want to write. See Oracle's custom objects documentation to set up the object and its fields.
| Destination field | Description |
|---|---|
| Unique record field | Required. A text or number field that uniquely identifies each record. GrowthLoop matches records on this field. |
| Email address field | Optional. Map your email column to the object's email address field to link each record to the Eloqua contact with that email address. If you skip this mapping, GrowthLoop imports records without a linked contact. |
| Any writable custom data object field | Optional. GrowthLoop loads every field you can update on the selected custom data object. |
Sync behavior
| Behavior | What happens |
|---|---|
| When it runs | GrowthLoop sends the sync as a batch on the next successful run. |
| Contact write | GrowthLoop creates or updates Eloqua contacts based on the Update rule and writes the mapped fields. |
| Contact match | Email Address is required. Rows without an email address fail. |
| Custom data object write | GrowthLoop creates or updates custom data object records and writes the mapped fields. Custom data object syncs always insert or update records, whichever Update rule you choose. |
| Custom data object match | GrowthLoop matches records on the unique record field you map. |
| Linked contacts | GrowthLoop links a custom data object record to an Eloqua contact when you map the object's email address field. |
| Empty values | Empty values are skipped, so they never clear data already stored in Eloqua. |
| Field changes in Eloqua | If a mapped field is deleted or made read-only in Eloqua, the sync fails and shows which fields to fix. |
| Shared list membership | Syncs do not add or remove contacts from an Eloqua shared list. |
| Deletes | GrowthLoop does not delete Eloqua contacts or custom data object records when rows leave the warehouse table. |
Confirm the export was successful
When the run finishes, confirm you can use the data in Eloqua.
- Audience export: Go to login.eloqua.com, open Audience → Tools → Shared Lists, and look up the list named after the export.
- Journey Destination Node: Open Audience → Tools → Shared Lists and look up the list named after the export. Confirm a contact who reached the node is in it.
- Contact sync: Open Audience → Contacts, search for the contact, and check the mapped fields.
- Custom data object sync: Open Audience → Tools → Custom Objects, open your custom data object, and view its records. Check the mapped fields, and that records are linked to contacts if you mapped the email address field.
In GrowthLoop, review counts on the audience Exports tab, open the Activity tab on the journey Destination Node, or confirm the sync appears in the Syncs table. See Export an audience, Monitor a journey, or Syncs for more information.
Congrats on successfully exporting to Eloqua!
Troubleshooting
These are the issues we see most often. You can always email us at [email protected] for help.
| Problem | Cause | Resolution |
|---|---|---|
| Connection fails to validate | Company Name (Site Name) is the full login, or the user lacks API access | Enter only the value before the backslash in SiteName\Username. Use a user with Advanced Users – Marketing and API access |
| Rows fail to match | Email Address is not mapped | Map the warehouse column that contains the customer's email address |
| Export fails with a field error | An additional field doesn't exist in Eloqua or is read-only | Check the field name in Eloqua, or use its internal name. Remove read-only fields such as Date Created |
| The list is missing in Eloqua | You are looking in campaigns or another Eloqua area | Open Audience → Tools → Shared Lists |
| A sync fails with a field error | A mapped field was deleted or made read-only in Eloqua | Update the sync's field mappings to remove or replace the field |
| Custom data object records are not linked to contacts | The object's email address field is not mapped | Map your email column to the custom data object's email address field |
| A contact sync does not create new contacts | The Update rule is Update | Change the Update rule to Insert or update |
| A sync did not change a shared list | Syncs update contacts only | Export an audience to add or remove shared list membership |
Updated 3 days ago
