# Co-occurrence

**Co-occurrence** measures how frequently two products appear together in the same context — e.g., the same basket, order, or browsing session.\
The more often two products co-exist, the stronger their association score.

#### How it is calculated

A **co-occurrence matrix** `C` is built where each cell `C[i,j]` represents the number of times product `i` and product `j` appear together.

|             | iPhone | Case | Charger | Book |
| ----------- | ------ | ---- | ------- | ---- |
| **iPhone**  | —      | 250  | 180     | 2    |
| **Case**    | 250    | —    | 40      | 1    |
| **Charger** | 180    | 40   | —       | 0    |

The association `iPhone → Case` is much stronger than `iPhone → Book`.

This raw count can be normalized, for example using a **cosine-style similarity score**:

<figure><img src="https://2350286830-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F6Yw9IRJ6KbbucQPwZUCZ%2Fuploads%2F5XxjSk4qf1vKzspG2RJP%2Fimage.png?alt=media&#x26;token=d146c2f3-bb27-4e5a-ad47-c8f5420de2d0" alt=""><figcaption></figcaption></figure>

#### Example

* A customer frequently buys an **iPhone** together with a **case** and a **charger** → “Frequently bought together” block.
* A shopper browses **backpacks** and **laptops** in the same session → “Co-viewed products” logic connects them.

#### Key takeaways

* Fully based on real user behavior (purchase or browsing).
* Simple, interpretable, and very effective once there’s enough volume.
* Less reliable for new products with no data yet.
