# The RFIS Scoring Model

RFIS is BIGDBM's behavioral signal scoring framework. It measures how recently, how often, and how intensely a consumer has shown intent, combining them into a single Strength score that surfaces the highest-quality in-market audiences.

## Recency
- **Recency**
- **Frequency**
- **Intensity**

→ **Strength**

Each behavioral signal in BIGDBM's data is tagged with three individual metrics: **Recency**, **Frequency**, and **Intensity**, combined into a single **Strength** score. Higher positive Strength values indicate consumers who are actively in-market right now. Negative values indicate suppression or disqualification signals.

ℹ️ All three input signals (R, F, and I) are measured over a **rolling 24-hour window** refreshed daily. Recency is expressed in whole days, where **today = 1** (never zero, to prevent division-by-zero in the Strength formula).

## Association Types

RFIS scores are not computed in isolation; they are calculated for specific **pairings between identity signals**. Each association type tells you something different: intent category interest, household linkage, device linkage, or the full cross-device graph. Every pairing gets its own independent R, F, I, and S values.

### Identifier key

- **HEM**: Hashed Email
  - SHA-256 or MD5 of an email address
  - The **anchor identity** in BIGDBM's graph. Every association is rooted to a HEM, a privacy-safe, irreversible hash of a consumer's email that can be matched against advertiser CRM data without exposing the raw address.

- **IAB**: IAB Category
  - Interactive Advertising Bureau taxonomy
  - A standardised **intent/interest category** from the IAB Content Taxonomy (e.g. _Automotive > Sedans_, _Home & Garden > Gardening_).

- **IP**: IP Address
  - IPv4 / IPv6 network address
  - The **household or network identifier**. An IP address links a consumer to a physical location or organisation.

- **MAID**: Mobile Ad ID
  - Apple IDFA / Google GAID
  - A **device-level identifier** for mobile attribution and targeting.

### The four pairings

1. **HEM ⇄ IAB Intent Signal**  
   Links a **consumer identity** to a specific **intent category**. This is the primary association for building in-market audiences.

2. **HEM ⇄ IP Household Signal**  
   Links a **consumer** to a **household or network location**.

3. **HEM ⇄ MAID Device Signal**  
   Links a **consumer's email identity** to a **mobile device**.

4. **HEM ⇄ MAID ⇄ IP Full Graph Signal**  
   The richest association: a **three-way linkage** between a consumer's email, their mobile device, and a household IP address.

### Each association type produces its own independent set of RFIS values.

## Recency

Recency is the **number of days since the consumer signal was last observed**. It answers the question: _"How fresh is this intent?"_  
**If the signal was observed today** → Recency = `1`

**If the signal was last observed N days ago** → Recency = `N`

## Frequency

Frequency is a **directional multiplier** that determines whether the signal represents _positive intent_ or a _negative / suppression_ signal. It is always either `+1` or `-1`.

**Frequency = +1** (Positive signal)  
**Frequency = −1** (Negative / suppression signal)

## Intensity

Intensity is the **raw count of signal appearances within the last 24 hours**, measured at **30-minute intervals**. It captures how deeply engaged or how persistently active a consumer is within a category.

**30-minute sampling window**

**Higher Intensity = stronger raw signal**

## Strength Score

Strength is the final computed score: a single number that combines all three signals into a prioritizable, sortable value that answers: _"How likely is this consumer to convert right now, and in which direction?"_

### Formula

**Strength = Intensity ÷ (Recency × Frequency)**

### Strength classifications:

- **Positive Strength (e.g. +8.0)**: Consumer is actively in-market. 
- **Low positive Strength (e.g. +0.1 → +1.0)**: Signal exists but is fading.
- **Negative Strength (e.g. −2.0)**: Suppression signal.

## Worked Examples

| Scenario | R<br>Recency | F<br>Frequency | I<br>Intensity | Strength = I÷R×F | Signal |
| --- | --- | --- | --- | --- | --- |
| 🚗 Hot auto shopper<br>Visited dealer site 8× today | 1 | +1 | 8 | +8.00 | Max priority |
| 🏡 Active home buyer<br>Browsed listings 5× today | 1 | +1 | 5 | +5.00 | High |
| 📱 Mild tech interest<br>1 product page view today | 1 | +1 | 1 | +1.00 | Low |
| ⏳ Fading auto intent<br>8 visits but 3 weeks ago | 21 | +1 | 8 | +0.38 | Fading |
| 📅 Distant signal<br>Researched a month ago | 30 | +1 | 4 | +0.13 | Very low |
| 🚫 Recent opt-out<br>Suppression event today, 3× | 1 | −1 | 3 | −3.00 | Suppress |
| 🔕 Strong suppression<br>Multiple opt-outs today | 1 | −1 | 8 | −8.00 | Hard exclude |

### Recommended thresholds for targeting:
- Use **Strength ≥ +1.0** for broad in-market audiences.
- Adjust based on your vertical's typical purchase cycle length.
