Salesforce Dictionary - Free Salesforce GlossarySalesforce Dictionary
Full Reporting Snapshot entry
How-to guide

How to create a Reporting Snapshot

You build a reporting snapshot in Setup after you already have a custom source report and a custom target object with fields ready to receive the data. The flow below covers defining the snapshot, mapping fields, and scheduling it.

By Dipojjal Chakrabarti · Founder & Editor, Salesforce DictionaryLast updated Jun 16, 2026

You build a reporting snapshot in Setup after you already have a custom source report and a custom target object with fields ready to receive the data. The flow below covers defining the snapshot, mapping fields, and scheduling it.

  1. Prepare the source report and target object

    Create a custom tabular or summary report with the columns you want to trend. Then create a custom object with fields sized to hold each value, plus a date or date-time field to stamp each run.

  2. Define the snapshot

    In Setup, use Quick Find to open Reporting Snapshots and click New Reporting Snapshot. Enter a name, unique name, and description, pick a running user, then select your source report and target object.

  3. Map the fields

    Click Save and Edit Field Mappings, or open the Field Mappings section and click Edit. Match each source report field to a compatible target field. For a summary report, pick the grouping level (or Grand Summary) that holds the data you want.

  4. Schedule and notify

    Set the snapshot to run daily, weekly, or monthly, choose a preferred start time, and add email notifications for yourself or a monitored group so you catch failed runs early.

Reporting Snapshot Name / Unique Namerequired

The label and API-safe unique name that identify the snapshot in Setup.

Running Userrequired

The user whose data access governs what the source report returns; only Modify All Data lets you pick someone other than yourself.

Source Reportrequired

A custom tabular or summary report whose results are captured on each run.

Target Objectrequired

The custom object that receives new records; it cannot have validation rules, triggers, or be a master-detail detail object.

Gotchas
  • Each run loads a maximum of 2,000 rows into the target object; rows beyond that are dropped and the notification flags the partial failure.
  • You cannot map to Created By, Last Modified By, Created Date, or Last Modified Date on the target object.
  • Adding validation rules, workflow, Apex insert triggers, or a 101st custom field to the target object will break later runs.
  • Converting the source report from summary to tabular after mapping, or pushing it past 100 fields, causes the snapshot to fail.

See the full Reporting Snapshot entry

Reporting Snapshot includes the definition, worked example, deep dive, related terms, and a quiz.