New Relic Destination

Destination Info
  • Server
Connection Modes
Device-mode Cloud-mode
Web Web
Mobile Mobile
Server Server

New Relic enables you to better understand, using their real-time analytics, the end-to-end business impact of your software performance.

Getting Started

Before you start, make sure New Relic supports the source type and connection mode you’ve chosen to implement. You can learn more about connection modes here.

Web Mobile Server
📱 Device-mode ⬜️ ⬜️ ⬜️
☁️ Cloud-mode
  1. From the Segment web app, click Catalog.
  2. Search for “New Relic” in the Catalog, select it, and choose which of your sources to connect the destination to.
  3. In the destination settings, enter your Insights Account ID and your Insert Key.
  4. Once destination enabled we’ll start forwarding your calls to New Relic.


If you’re not familiar with the Segment Specs, take a look to understand what the Track method does. An example call would look like:

analytics.track('Article Completed', {
  title: 'How to Create a Tracking Plan',
  course: 'Intro to Analytics',

We forward track calls to New Relic in order to insert custom events using their Insights API.

Your event properties will be included with the event, conforming to the following rules:

  • booleans are transformed to strings
  • reserved nrql words are wrapped with backticks
  • reserved words are removed
  • dates are converted to ISO strings
  • arrays and objects are removed

By default the events are given an eventType of ‘Segment’. This can be changed using the optional ‘Custom Default Event Type’ setting in the Segment UI.

If you pass a revenue property, we’ll pass that through as the value of the conversion.


You can send computed traits and audiences generated using Engage to this destination as a user property. To learn more about Engage, schedule a demo.

For user-property destinations, an identify call is sent to the destination for each user being added and removed. The property name is the snake_cased version of the audience name, with a true/false value to indicate membership. For example, when a user first completes an order in the last 30 days, Engage sends an Identify call with the property order_completed_last_30days: true. When the user no longer satisfies this condition (for example, it’s been more than 30 days since their last order), Engage sets that value to false.

When you first create an audience, Engage sends an Identify call for every user in that audience. Later audience syncs only send updates for users whose membership has changed since the last sync.

Real-time to batch destination sync frequency

Real-time audience syncs to New Relic may take six or more hours for the initial sync to complete. Upon completion, a sync frequency of two to three hours is expected.


Segment lets you change these destination settings from the Segment app without having to touch any code.

Setting Description
Account ID
string. Your New Relic Insights account ID
Custom Default Event Type string. By default the eventType for any unmapped track events will be sent as ‘Segment’. You can define another custom eventType name to be used instead of that here.
Map Track Events to Custom Tables text-map, defaults to {}.

Enter your Segment .track() event names on the left and their respective eventType (table name) in New Relic.
Insert Key
string. Put your New Relic Insert Key
Endpoint Region
select. The destination will send your data to an endpoint in this region.
Send Device Context boolean, defaults to FALSE .

If you enable this setting, we will flatten all your context fields delimited by a period and send it to New Relic. This is recommended as getting rich device context is useful inside New Relic.
Send UserId and AnonymousId boolean, defaults to FALSE .

If you want to send your Segment userId and anonymousId, enabling this option will do so.

This page was last modified: 08 Mar 2022

Get started with Segment

Segment is the easiest way to integrate your websites & mobile apps data to over 300 analytics and growth tools.
Create free account