Skip to content

Reporting & Analytics

Salesforce offers a spectrum of analytics tools — from built-in reports to enterprise BI platforms. The CTA must select the right tool for each user persona, data volume, and analytical complexity. Recommending the wrong tier means either frustrating users with limited capabilities or wasting budget on tools that are underutilized.

Analytics Tool Landscape

flowchart LR
    A[Simple<br/>Low Volume] --> B[Standard Reports<br/>& Dashboards]
    B --> C[CRM Analytics<br/>Tableau CRM]
    C --> D[Tableau]
    D --> E[Data Cloud<br/>Reports]
    E --> F[Complex<br/>High Volume]

    style A fill:#2d6a4f,color:#fff
    style F fill:#9d0208,color:#fff

Standard Reports and Dashboards

The native reporting engine built into every Salesforce edition. This should always be the first option evaluated.

Capabilities

FeatureSupport
Report typesTabular, Summary, Matrix, Joined
FiltersStandard, cross, row-level formulas
GroupingUp to 3 levels
ChartsBar, line, pie, funnel, scatter, gauge
DashboardsUp to 20 components per dashboard
SchedulingEmail delivery on schedule
SubscriptionsUsers subscribe to reports and dashboards
Custom report typesJoin up to 4 objects
Bucket fieldsGroup report data without formulas
Conditional highlightingColor-code based on thresholds

Limitations

LimitationImpactWorkaround
2,000 rows in dashboardsSummary dashboards only show top 2,000 groupsUse report drill-down or CRM Analytics
No cross-org reportingCannot query data across multiple orgsCRM Analytics or Tableau with multi-org data sources
Limited joinsMax 4 objects in custom report typeUse CRM Analytics dataflows for complex joins
Historical dataOnly snapshot fields, limited trendingAnalytic Snapshots or CRM Analytics
Complex calculationsRow-level formulas are limitedUse CRM Analytics SAQL or Tableau calculations
No real-timeReports query data at execution time; no streamingUse Platform Events + CRM Analytics for near-real-time
80-character field limitReport formula fields truncate long textExport or use CRM Analytics

CTA exam default

Standard reports should be your default recommendation for any reporting requirement. Only escalate to CRM Analytics or Tableau when you can articulate a specific limitation that standard reports cannot address. Judges look for cost-consciousness.

Two approaches to tracking data over time — a common CTA scenario requirement.

AspectDetail
Objects supportedOpportunities, Cases, and up to 3 custom objects
Fields trackedUp to 8 fields per object
History retainedUp to 5 snapshots over 3 months
ConfigurationDeclarative (Setup)
ReportingHistorical trend reports (shows field values at each snapshot)

Analytic Snapshots (Reporting Snapshots)

AspectDetail
SourceAny summary or tabular report
TargetCustom object (stores snapshot data as records)
ScheduleDaily, weekly, or monthly
RetentionAs long as records exist (subject to storage)
ReportingStandard reports on the target custom object

When to use which:

ScenarioUse
Track opportunity amount changes over timeHistorical Trending
Monthly KPI dashboard comparing performance over 12+ monthsAnalytic Snapshots
Regulatory compliance requiring data at specific points in timeAnalytic Snapshots
Quick “what changed” analysis on casesHistorical Trending

Storage impact

Analytic Snapshots create real records in custom objects. A weekly snapshot of 10,000 rows creates 520,000 records per year. Factor this into data storage calculations and LDV planning.

CRM Analytics (Tableau CRM / Einstein Analytics)

CRM Analytics is the in-platform advanced analytics solution, deeply integrated with Salesforce data.

When CRM Analytics is the Right Choice

RequirementWhy CRM Analytics
Complex calculations on Salesforce dataSAQL/SAQL-powered computations beyond report formulas
Cross-object analytics beyond 4-object joinDataflows can join unlimited objects
Predictive analyticsEinstein Discovery integration
Embedded analyticsDashboard components embedded in Lightning pages
AI-powered insightsEinstein Discovery for automated findings
Salesforce-native experienceUsers stay within Salesforce; no context switching
Action from insightDirect actions (create records, update fields) from dashboards

Architecture — Full Data Pipeline

The CRM Analytics data pipeline moves data from source systems through transformation layers into consumable analytics assets. Understanding each stage is critical for CTA scenarios involving analytics architecture.

flowchart TD
    subgraph Sources["Data Sources"]
        S1["Salesforce Objects<br/>(sfdcDigest)"]
        S2["External Data<br/>(CSV, DB connectors)"]
        S3["Other Datasets<br/>(edgemart)"]
    end

    subgraph Transform["Transformation Layer"]
        DF["Dataflows<br/>(JSON-based ETL)"]
        RC["Recipes<br/>(Visual no-code ETL)"]
    end

    subgraph Storage["Analytics Storage"]
        DS["Datasets<br/>(Denormalized,<br/>in-memory optimized)"]
    end

    subgraph Consume["Consumption Layer"]
        LN["Lenses<br/>(Ad-hoc exploration)"]
        DB["Dashboards<br/>(Interactive visuals)"]
        SQ["SAQL Queries<br/>(Programmatic access)"]
        ED["Einstein Discovery<br/>(AI predictions)"]
    end

    subgraph Action["Action Layer"]
        ACT["Create/Update Records"]
        EMB["Embedded in<br/>Lightning Pages"]
        EXP["Export / Subscribe"]
    end

    S1 --> DF
    S1 --> RC
    S2 --> DF
    S2 --> RC
    S3 --> DF
    S3 --> RC

    DF --> DS
    RC --> DS
    RC -->|"Write-back"| WB["Salesforce Objects<br/>(target)"]

    DS --> LN
    DS --> DB
    DS --> SQ
    DS --> ED

    DB --> ACT
    DB --> EMB
    DB --> EXP
    ED --> ACT

    style Sources fill:#1b4332,color:#fff
    style Transform fill:#2d6a4f,color:#fff
    style Storage fill:#457b9d,color:#fff
    style Consume fill:#264653,color:#fff
    style Action fill:#e9c46a,color:#000

Recipes vs Dataflows

Recipes are the newer, recommended approach for most use cases. They provide a visual point-and-click interface, data preview during transformation, more join types, and built-in ML transformations (Predict Missing Values, Detect Sentiment). Dataflows use JSON definitions and are still needed for advanced scenarios like complex augment operations or legacy configurations.

Key Concepts

ConceptDescription
DataflowETL pipeline that extracts, transforms, and loads data into datasets
RecipeVisual, no-code data transformation tool (newer than dataflows)
DatasetOptimized in-memory data store for fast analytics
SAQLAnalytics-specific query language (more powerful than SOQL for analytics)
DashboardInteractive visualization with bindings and selections
LensSingle dataset exploration view
StoryEinstein Discovery AI-generated narrative from data

CRM Analytics Limitations

LimitationImpact
Refresh frequencyDataflows typically run every 1-24 hours; not real-time
Dataset row limits250M rows per dataset (varies by license)
Learning curveSAQL and dashboard JSON require training
License costRequires CRM Analytics Plus or Growth permission set license
Not a data warehouseNot designed for massive historical data storage
External data limitsExternal connector row limits vary

Tableau

Tableau is a standalone enterprise BI platform for complex analytics across any data source. Post-acquisition by Salesforce, integration is improving but Tableau remains a separate product.

Tableau Architecture

flowchart TD
    subgraph DS["Data Sources"]
        DB["Databases<br/>(SQL Server, Oracle,<br/>PostgreSQL)"]
        DW["Data Warehouses<br/>(Snowflake, BigQuery,<br/>Redshift)"]
        CL["Cloud Apps<br/>(Salesforce, Google Sheets)"]
        FL["Files<br/>(CSV, Excel)"]
    end

    subgraph TP["Tableau Platform"]
        TC["Tableau Creator<br/>(Desktop authoring)"]
        TS["Tableau Server /<br/>Tableau Cloud"]
        TE["Tableau Explorer<br/>(Modify workbooks)"]
        TV["Tableau Viewer<br/>(Consume dashboards)"]
    end

    DB --> TC
    DW --> TC
    CL --> TC
    FL --> TC

    TC -->|"Publish"| TS
    TS --> TE
    TS --> TV
    TS -->|"Tableau Embedded"| SF["Salesforce<br/>Lightning Pages"]

    style DS fill:#1b4332,color:#fff
    style TP fill:#457b9d,color:#fff

When Tableau is the Right Choice

RequirementWhy Tableau
Multi-source analyticsConnect to databases, data warehouses, cloud apps, files
Complex visualizationsAdvanced chart types, geospatial, statistical analysis
Enterprise BI standardOrganization-wide analytics beyond CRM data
Data warehouse analyticsQuery Snowflake, BigQuery, Redshift directly
Governance at scaleCentralized data governance, certified data sources
Non-Salesforce usersUsers who never touch Salesforce but need business analytics

Tableau vs CRM Analytics Decision Matrix

FactorStandard ReportsCRM AnalyticsTableau
Data sourceSalesforce onlySalesforce + limited externalAny data source
User personaBusiness usersAnalysts + business usersAnalysts + data teams
Setup complexityLow (clicks)Medium (dataflows, SAQL)High (server, connections)
Learning curveMinimalModerateModerate-High
CostIncludedAdd-on licenseSeparate product + licenses
EmbeddingNative in SalesforceNative in SalesforceTableau Embedded
Real-timeQuery-timeNear-real-time with syncLive connections or extract
Cross-object4 objects maxUnlimited (dataflows)Unlimited (SQL)
PredictiveNoEinstein DiscoveryTableau AI / external models
MobileSalesforce Mobile AppCRM Analytics MobileTableau Mobile

CRM Analytics vs Tableau — Architecture Differences

flowchart LR
    subgraph CRMA["CRM Analytics"]
        direction TB
        A1["Data Sources"] --> A2["Dataflows / Recipes<br/>(in-platform ETL)"]
        A2 --> A3["Datasets<br/>(in-platform storage)"]
        A3 --> A4["Dashboards<br/>(SAQL-powered)"]
        A4 --> A5["Embedded in<br/>Salesforce"]
    end

    subgraph TAB["Tableau"]
        direction TB
        B1["Any Data Source"] --> B2["Tableau Prep<br/>(external ETL)"]
        B2 --> B3["Extracts or<br/>Live Connection"]
        B3 --> B4["Workbooks<br/>(VizQL-powered)"]
        B4 --> B5["Tableau Server /<br/>Cloud / Embedded"]
    end

    style CRMA fill:#2d6a4f,color:#fff
    style TAB fill:#457b9d,color:#fff
Architecture AspectCRM AnalyticsTableau
Data processingInside Salesforce platformExternal server or cloud
Data storageSalesforce analytics storage (datasets)Tableau extracts or live queries to source
Query languageSAQL (proprietary)VizQL + native SQL passthrough
Refresh modelScheduled dataflow/recipe runsLive connection or scheduled extract refresh
EmbeddingNative Lightning componentTableau Embedded (iframe or API)
AI capabilitiesEinstein Discovery (native)Tableau AI + external model integration
AdministrationSalesforce admin teamDedicated Tableau admin team

When to use both together

In enterprise architectures, CRM Analytics and Tableau often coexist. CRM Analytics handles operational analytics embedded in Salesforce (sales manager dashboards, service agent insights), while Tableau handles enterprise BI across all data sources (executive cross-system reporting, data science exploration). The deciding factor is whether the analytics consumer lives in Salesforce or outside it.

Data Cloud Reports

Data Cloud provides its own analytics capabilities for unified customer data across systems.

Data Cloud Analytics Use Cases

Use CaseHow Data Cloud Helps
Unified customer profile reportingAggregate data from multiple systems into a single view
Segment analysisAnalyze customer segments across touchpoints
Identity resolution metricsReport on match rates and data quality
Activation analyticsMeasure segment activation performance
Calculated insightsCustom KPIs computed across the unified data model

Data Cloud vs CRM Analytics

Data Cloud analytics focuses on the unified customer profile — cross-system identity, segmentation, and activation. CRM Analytics focuses on operational reporting and predictive analytics on CRM data. They are complementary, not competitive. A mature analytics architecture may use both.

Einstein Discovery

Einstein Discovery uses AI to automatically analyze datasets and surface insights, predictions, and recommendations.

Capabilities

FeatureDescription
Automated insightsDiscovers correlations and patterns humans might miss
PredictionsBuilds predictive models (classification, regression)
RecommendationsSuggests actions to improve outcomes
Story-based narrativesExplains findings in natural language
Model deploymentDeploy predictions as formula fields on Salesforce objects
Bias detectionFlags potential bias in predictive models

When to Recommend Einstein Discovery

  • Customer asks: “Why are we losing deals?” or “What predicts case escalation?”
  • Need predictive scoring beyond rule-based (lead score, churn risk, win probability)
  • Want to surface non-obvious patterns in large datasets
  • Need explainable AI (vs. black-box models)

Analytics Decision Tree

flowchart TD
    A[Analytics Requirement] --> B{Data sources?}

    B -->|Salesforce only| C{Complexity?}
    B -->|Multiple sources<br/>including non-Salesforce| D{Primary users?}

    C -->|Simple: counts, sums,<br/>basic grouping| E[Standard Reports<br/>& Dashboards]
    C -->|Complex: cross-object,<br/>trending, predictions| F{Need predictive<br/>analytics?}

    F -->|Yes| G[CRM Analytics +<br/>Einstein Discovery]
    F -->|No| H{Beyond 4-object<br/>join or complex calc?}

    H -->|Yes| I[CRM Analytics]
    H -->|No| E

    D -->|Salesforce users<br/>+ external analysts| J{Need enterprise<br/>BI governance?}
    D -->|Non-Salesforce<br/>users only| K[Tableau]

    J -->|Yes| K
    J -->|No| L{Need unified<br/>customer profile?}

    L -->|Yes| M[Data Cloud +<br/>CRM Analytics]
    L -->|No| I

    style E fill:#2d6a4f,color:#fff
    style G fill:#457b9d,color:#fff
    style I fill:#457b9d,color:#fff
    style K fill:#9d0208,color:#fff
    style M fill:#e9c46a,color:#000

Analytics Architecture Patterns

Pattern 1: Standard-Only (Small/Medium Orgs)

flowchart LR
    A[Salesforce Data] --> B[Standard Reports]
    A --> C[Standard Dashboards]
    B --> D[Email Subscriptions]
    C --> D

Pattern 2: CRM Analytics Augmented

flowchart LR
    A[Salesforce Data] --> B[Standard Reports<br/>for operational]
    A --> C[CRM Analytics<br/>Dataflow]
    D[External CSV] --> C
    C --> E[CRM Analytics<br/>Dashboards]
    E --> F[Embedded in<br/>Lightning Pages]
    C --> G[Einstein Discovery<br/>Predictions]
    G --> H[Prediction Fields<br/>on Records]

Pattern 3: Enterprise Analytics (Large/Complex Orgs)

flowchart TD
    A[Salesforce] --> D[Data Warehouse<br/>Snowflake/BigQuery]
    B[ERP] --> D
    C[Marketing] --> D

    A --> E[Standard Reports<br/>Operational]
    A --> F[CRM Analytics<br/>Sales/Service Analytics]

    D --> G[Tableau<br/>Enterprise BI]

    F --> H[Salesforce Users]
    E --> H
    G --> I[All Business Users]

    A --> J[Data Cloud]
    B --> J
    C --> J
    J --> K[Unified Customer<br/>Insights]
    K --> H

Reporting Performance Optimization

StrategyWhen to Apply
Report filtersAlways — filter to the minimum dataset needed
IndexingAdd custom indexes on fields frequently used in report filters
Skinny tablesFor reports on objects with many fields, request skinny tables from Salesforce Support
Async reportsReports running > 2 minutes should use async API
Dashboard filtersUse dynamic dashboard filters instead of multiple similar dashboards
Scheduled reportsSchedule heavy reports during off-peak hours
Data summarizationUse rollup summary fields or batch Apex to pre-compute aggregates
Archive old dataMove old records to Big Objects or external storage to reduce report scan

Sources