I am reviewing a request to track changes performed on the address field and some other custom fields on the contact object for long periods of time.

I have evaluated Field Tracking History and Field Audit Trail, but I believe both of these solution will not meet the requirements.

I am looking for some clarification / verification on whether or not Field Tracking History or Field Audit Trail meets my requirements. I'm essentially trying to find the simplest way to capture this data for usage within the Analytics Studio to easily track changes over time.

Field Tracking History

My understanding of the following documentation indicates Field Tracking History is only kept for 18 months.

Field History Tracking - Salesforce Documentation

Field Audit Trail

It's not very clear to me whether or not compound fields such as address are considered formula fields or roll-up fields... if they are, this would disqualify my ability view address change data. HOWEVER, I am able to track address changes in Field History Tracking so I would think I would be good.

In addition, ideally tracking data over a longer period of time than 10 years would be ideal.

Field Audit Trail - Salesforce Documentation

I'm leaning towards just creating a trigger upon Contact address and other field changes that creates a new custom object that tracks the changes, but that seems a little excessive.

Any ideas?


After reading more into field tracking, could the Event Log object be utilized? I'm pulling up the object in Analytics studio, but I'm not seeing any way to configure to show event types that pertain to updating an object field, and just as importantly, then filtering event logs to display object field updates to counting entries of when a field was updated.

To answer my question in the above EDIT, please see: Event Log Object - Tracking Field Changes

  • 1
    "seems a little excessive" this whole thing seems a little excessive. Would you want all of your known addresses tracked over the course of 10+ years? Taking my tin foil hat off for a minute, I think you're on the right path with using a custom object but I think you'd want a big object instead as they can handle larger amounts of data (the built in history is stored in big objects).
    – gNerb
    May 16, 2018 at 16:55
  • I agree, but I'm just evaluating the options. I'll take a look into the big objects approach.
    – S.B.
    May 16, 2018 at 17:33

1 Answer 1


With the help of Salesforce Shield you can track 60 fields per object and duration upto 10 years by default.

Refer Field Audit Trail

You would define the history retention of custom duration on a per-object basis using the Metadata API, which cannot be possible through Salesforce UI. Refer Field Audit Trail Implementation Guide

Here is an example:

<?xml version="1.0" encoding="UTF-8"?>
<CustomObject xmlns="http://soap.sforce.com/2006/04/metadata">
<description>My field history retention</description>

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .