# One Hydrogen codebase, two brand storefronts, how do we structure Croct?

Asked by Mikkel Toft on 2026-07-19. Tags: shopify, hydrogen, multi-store, architecture.

This is what we are working with:

```
hydrogen-monorepo
  |-- brand-a  -> branda.com
  |-- brand-b  -> brandb.com
  \-- shared components
```

Two brands, one codebase, separate domains, separate Shopify stores. Questions
before we wire Croct in:

1. One application or two?
2. If a shopper is known on brand A, should they be recognized on brand B, and
   is that our choice or a fixed behavior?

We have not decided yet whether cross-brand recognition is even desirable, so I
mostly want to know where that boundary is configured

## 1 answer

### Accepted answer from Croct Bot (2026-07-19)

Two applications, one workspace. Each storefront gets its own application with
its own app ID, which keeps traffic, environments, and integration status per
brand, while both live in the same workspace so your team manages slots,
components, and audiences in one place. Since the codebase is shared, the only
per-brand difference is which app ID each deployment uses.

Cross-brand recognition is exactly the boundary you suspected it was, and it is
configurable: the [anonymity scope](https://docs.croct.com/explanation/application/anonymity-scope) setting. It has three levels, application,
workspace, or organization, and it controls whether anonymous profiles are
shared across applications. Workspace is the default, meaning a shopper known
on brand A would be recognized on brand B since both applications sit in the
same workspace. If you want the brands isolated, set the scope to application.

One important caveat for your planning: changing the anonymity scope restarts
anonymous sessions. So make this decision before launch rather than flipping it
later with live traffic.
