---
title: Best practices (CJA)
slug: docs/best-practices-cja
docTags: 
createdAt: 2025-06-16T04:49:56.226Z
---

## Best Practices for CJA Projects

When building custom demos, it’s often necessary to tailor your Customer Journey Analytics (CJA) project to align with a customer’s brand — adjusting labels, dimensions, and metrics accordingly.

Within the **[Demo-System-Next (DSN)](https://dsn.adobe.com)** ecosystem, there are a few recommended approaches to achieve this efficiently while minimizing any accidental impact on shared demo assets.

:::ExpandableHeading
## New Instance (Moderate volume | Streaming data)

- Choose a new sandbox and use **[DSN Quick Setup](https://dsn.adobe.com/quick-setup)** feature to configure the basic building blocks.
- Next, use the DSN datasets to configure "**Connection**" in CJA. You may choose to use `IdentityMap -> Email` as stitching attribute across DSN datasets.
- Benefit of this type setup supports Journey Optimizer (**AJO**), Decisioning (**ODE**), and Segment (**ProfileSnapshot**) datasets — allowing you to demonstrate a complete RTCDP-to-CJA workflow.
- ✅ In the connection setup UI, ensure “**Ingest new records**” is enabled for each dataset.
- Use the **[B2C Data Generator](https://dsn.adobe.com/tools/b2c-data-generator)** to ingest a few thousand experience events into the instance. The tool supports recursive generation, making it easy to manage volume.
- Benefits include:
  - All interaction data will be continuously captured and reflected in your CJA project.
  - Audience qualification, journeys, and personalization flows will also contribute to reporting automatically.
- This approach uses **Profile-enabled** datasets with potentially millions of identities and events — monitor usage to avoid unexpected costs due to identity stitching.
- Since, the tool does not provide option for configuring brands; so, in CJA Data-View, use "**Derived field**" feature to map existing labels to match with brand.
:::

:::ExpandableHeading
## New Instance (High volume | Batch data)

- Select a new sandbox and use **[DSN Quick Setup](https://dsn.adobe.com/quick-setup)** to prepare the basic structure.
- Create new datasets based on DSN schemas — *each schema represents a distinct data source*.
- ⚠️ **DO NOT** enable these datasets for Profile.
- Configure a Connection in CJA using the new datasets. Recommended stitching attributes: `_<TENANT>.identification.core.crmId` or `IdentityMap -> CRM`
- ✅ In the connection setup UI, ensure “**Ingest new records**” is enabled for each dataset.
- Use the [Experience Event Generator](https://git.corp.adobe.com/badajena/aep-experience-data-generator) to programmatically create large data volumes.
  📌 Note: Basic JavaScript knowledge is required.
- Manually upload the generated output in batch mode to ingest the data.
- Benefits include:
  - Full control over eventTypes, branding and data volume.
:::

::::ExpandableHeading
## Reuse Shared Reports (DSN Public Projects)

:::hint{type="warning"}
**Public Project Data Views & Derived Attributes**

From the data view, any derived fields starting with "ACA"; otherwise, we cannot complete the setup of the content analytics demo. Also, do not modify the original Omni-Channel Multi-Industry data view. Make a copy for yourself and edit that.
:::

:::hint{type="success"}
Following this method helps preserve the integrity of Demo-System-Next Public Projects for everyone.
:::

This method uses Adobe Demo System Shared org assets and is highly recommended for standard demos:
•	DSN Public Projects are actively maintained with the latest features.
•	Following best practices ensures your customizations don’t disrupt other teams.

### PANEL / HEADER RE-LABEL

- In some customer engagements, where we do not demonstrate technical aspect of analysis using CJA and we give the clients an experience of benefits of CJA and show them the experience or environments; we recommend this approach.
- Any marketer can go ahead and make a copy (duplicate) from the available list of DSN public-projects.
- In the copied version of the CJA project, users can edit and re-lable panels or visualization heading (NOT VALUES). User can also re-arrange visualizations as per the presentation plan.

### DERIVING BRANDED PRESENTATION

- In this method, you can change the values (dimensions and metrics) of the DSN public projects.
- **Make a copy** (duplicate) Data-View; then, copy of CJA project. Finally, refer the copied Data-View in all of the visualizations in CJA project.
- Values of dimensions and metrics can be controlled by leveraging "Derived field" and custom/new metrics.
- Please note; that, "Derived fields" are defined at Data-View level and managed at "Connection" level i.e. IF YOU CREATE / MODIFY DERIVED FIELD(S), THE CHANGES REFLECT ACROSS ALL THE DATA-VIEWS, WHICH ARE PART OF CONNECTION.
- **DO NOT MODIFY/UPDATE/DELETE** EXISTING DERIVED FIELD. ALWAYS CREATE NEW DERIVED ATTRIBUTES (You can refer to existing derived fields in the creation of new derived attributes)
- PREPEND SHORT ABBREVIATION TO NEWLY CREATED DERIVED FIELD LABEL. For example **`ABC_Page name`**
- Now, refer to the newly created derived fields in the copied data view and subsequently in the CJA project for your demo.
::::

:::hint{type="info"}
📣 **Need Help or Have Suggestions?**

For questions, feedback, or ideas, reach out to the Demo-System-Next development team on Slack: **[#demo-system-next](https://adobe.enterprise.slack.com/archives/CPCRVPLDQ)**.
:::







