See where CDP is headed with AI — Agentic World 2026, Oct 5–7, Miami →
Glossary

Feature Store

A feature store is a centralized repository for storing, serving, and reusing ML-ready features. Learn how CDPs feed feature stores for AI decisioning.

CDP.com Staff CDP.com Staff 12 min read

A feature store is a centralized platform for defining, storing, and serving machine learning features — pre-computed, reusable data attributes such as “average order value over 30 days” or “email engagement score” — that ensures consistency between model training and real-time inference.

In machine learning, a feature is any measurable input to a model: a customer’s purchase frequency, the time since their last login, their preferred channel, or a derived metric like lifetime value decile. Feature engineering — the process of transforming raw data into these model-ready inputs — consumes a large share of ML development time. Feature stores solve this by centralizing feature definitions so that multiple teams and models can reuse the same computed attributes without duplicating effort.

Pioneered by Uber (Michelangelo, 2017) and later adopted by platforms like Feast, Tecton, and Databricks, feature stores have become a standard component in production ML architectures. For marketing AI, they provide the bridge between raw customer data in a Customer Data Platform (CDP) and the models that drive AI personalization and AI decisioning.

How Feature Stores Work

1. Feature Definition and Registration

Data scientists define features using declarative specifications: the source data, the transformation logic, the aggregation window, and the freshness requirements. For example, a feature called avg_order_value_30d specifies: source = orders table, transformation = mean(order_total), window = 30 days, freshness = updated hourly. These definitions are registered in a central catalog so other teams can discover and reuse them.

2. Batch and Real-Time Computation

Feature stores compute features through two pathways. Batch pipelines process historical data at scheduled intervals (hourly, daily) and store results in an offline store for model training. Streaming pipelines process events in real time and update an online store for low-latency inference. Both pathways use the same feature definition, eliminating training-serving skew — the dangerous mismatch that occurs when a model is trained on features computed differently than those served in production.

3. Storage and Serving

The offline store (typically a data warehouse or data lake) holds historical feature values for training datasets. The online store (Redis, DynamoDB, or a purpose-built key-value store) serves the latest feature values with single-digit millisecond latency for real-time model inference. When an AI agent needs to decide the next best action for a customer, it queries the online store for that customer’s current features.

4. Feature Discovery and Reuse

A feature catalog allows data scientists across the organization to search for existing features before building new ones. If one team has already computed email_open_rate_7d, another team building a churn model can reuse it directly. This reduces duplicated effort and ensures consistency across models.

The CDP Connection

A CDP is a primary data source for marketing-focused feature stores. The CDP’s identity-resolved customer profiles, behavioral event streams, and unified customer 360 records provide the raw material from which features are computed. Without a CDP feeding clean, deduplicated customer data into the feature store, features would be computed on fragmented, inconsistent data — producing unreliable model inputs.

In some architectures, the CDP itself functions as a feature store for customer-centric features. CDPs that support computed attributes, real-time aggregations, and API-accessible profile fields effectively serve the same role as a feature store for marketing AI use cases.

Feature Store vs. Data Warehouse

DimensionFeature StoreData Warehouse
PurposeServe ML-ready features for training and inferenceStore and query structured data for analytics
LatencyOnline store: sub-10ms; offline store: batchTypically seconds to minutes
Primary ConsumerML models and AI agentsAnalysts and BI tools
SchemaFeature definitions with transformation logicTable schemas with raw and aggregated data
ConsistencyEnsures training-serving consistencyNo built-in training-serving alignment
Time TravelPoint-in-time feature retrieval for trainingHistorical queries via SQL

Practical Guidance

Feed features from your CDP. Route customer behavioral and transactional data through your CDP’s data pipeline into the feature store. The CDP handles identity resolution and data quality; the feature store handles transformation and serving. This separation of concerns keeps both systems focused on what they do best.

Eliminate training-serving skew. Use the same feature definitions for both batch training and real-time serving. Feature stores automate this, but only if both pathways are configured from the same registered definitions. Audit regularly to ensure consistency.

Start with high-impact features. Begin with features that multiple models need: recency, frequency, monetary value, channel preferences, engagement scores. These foundational customer features, typically derived from CDP data, provide immediate reuse value.

Monitor feature freshness. Stale features degrade model performance silently. Implement data observability monitors on feature computation pipelines to alert when features fall behind their freshness SLAs.

How feature stores fail in production

A feature store removes one class of failure — training-serving skew — by computing every feature from a single registered definition. It also concentrates risk: when the store breaks, every model that depends on it breaks the same way at the same time. That is the trade teams accept, and it makes the failure modes below worth knowing before launch, because none of them shows up in a model’s offline evaluation metrics. A model can look excellent in backtesting while the features it consumes are quietly wrong.

Failure modeWhat you observeRoot causeFix
Training-serving skewOffline metrics hold up; live performance drops after launchThe training path and the serving path compute the feature differently — a timezone boundary handled in one, a refund rule applied in the otherRegister one definition and compute both paths from it; audit for drift between the two
Stale featuresThe model acts on data that is hours or days oldAn upstream pipeline failed and the store kept serving the last good valueFreshness SLAs per feature with alerts, plus a documented decision on whether to serve stale values or fail closed
Feature driftAccuracy erodes over months with no code changeThe population shifted; a once-predictive attribute stopped carrying signalTrack feature distributions, not just model scores; re-select features when the population moves
Silent schema breakageOne feature stops updating while the rest look healthyA source column was renamed or repurposed and one computation brokeSchema contracts on upstream tables; observability on feature pipelines, not on the model alone

The common thread is that the failure lives in the features, not the model. A model served a frozen value for weeks still produces plausible-looking scores, and dashboards that track only conversion rates surface the damage weeks later. This is why feature-level monitoring — freshness, volume, distribution — belongs to the feature store’s operating contract rather than to any single model team.

Backfills and point-in-time correctness

A newly registered feature has no history. To train a model on it today, someone has to produce its values for every past event in the training data — that is the backfill: the feature’s transformation logic replayed over historical data. The compute is the manageable part. The hard part is a correctness property that is easy to break and expensive to detect.

Point-in-time correctness means each training example may use only the feature values that existed at the moment of the event being predicted. Break this and the training data contains information from the future — leakage. Offline metrics improve, production performance collapses, and nothing errors anywhere, because at training time the future data really was available. Leakage is the most expensive bug in feature work precisely because it makes everything look better.

The default behavior of a SQL join works against the property. Joining feature values onto an event log by customer ID matches on the customer, not on time, and quietly attaches values computed after the event. The fix is an as-of join — for each event, the most recent feature value as of that event’s timestamp — combined with awareness of computation schedules: a daily aggregation is not knowable mid-morning on the day it covers. Feature stores implement point-in-time joins so individual pipelines do not have to re-solve the problem.

Backfills carry an operational weight too. Recomputing a feature across years of event history is a warehouse-scale job, which is why definitions should be versioned: when transformation logic changes, the store recomputes history under the new version instead of overwriting it, so a model trained on the old definition can still be reproduced. And the backfill must run the same registered definition as live computation — otherwise the historical values and the live values are two different features wearing one name, and skew returns through the back door.

When a feature store earns its keep

The honest answer for a team with one model, one owner, and batch scoring is that well-organized SQL and a scheduled job will do. The registry and the online store are overhead until a second consumer needs the same attributes, and the costs are real: another copy of customer data, another system to operate. What tips the decision is how many consumers need the same features and how tolerant each one is of stale values.

SituationStart withWhy it mattersFailure mode without it
One model, one team, batch scoringTransformations in the existing pipeline on a scheduleWith a single consumer, the registry and online store add cost without reuseWasted infrastructure and a slower path to the first model
The same feature feeds several models or teamsA registry holding one definition, served to every consumerOne definition removes duplicated compute and disputes over whose number is rightDivergent values for the “same” feature and silent skew between models
Decisions happen in milliseconds — session-level offers, risk flagsAn online store with low-latency lookup, kept fresh by streaming updatesA well-trained feature is worthless if looking it up takes longer than the decisionThe model falls back to defaults and performance degrades without an error
Features feed agentic AI systems that act on their ownOne interface through which agents read features, with freshness contractsAutonomous steps compound errors when each one assembles its own inputsInconsistent inputs across steps; agents behave differently for identical customers
Model decisions must be reconstructed laterLineage from each feature back to its source dataExplaining a decision requires knowing exactly what the model sawNo way to trace a prediction to the data behind it

Two signals indicate the line has been crossed: the same feature exists under different names or logic in more than one codebase, and teams argue about which value is correct. Both are consistency problems, which is the category of problem a feature store actually solves — the storage was never the point.

Consumer tolerance is the axis that moves this decision fastest. Analysts querying last week’s aggregates tolerate hours of staleness; an agentic data platform where agents read customer context and act without a human in the loop inherits the strict end of every requirement in the table at once. Freshness, latency, and consistency stop being trade-offs that can be paid one at a time.

FAQ

What is the difference between a feature store and a database?

A database stores raw or aggregated data for general-purpose querying. A feature store is purpose-built for machine learning: it stores pre-computed, versioned feature values with both an offline store for model training and an online store for low-latency inference. The critical differentiator is training-serving consistency — a feature store guarantees that the features used to train a model are computed identically to those served in production, preventing skew that degrades model accuracy.

Do I need a feature store if I have a CDP?

It depends on your AI maturity. If your CDP supports computed attributes and real-time profile APIs, it may serve as a sufficient feature store for marketing AI use cases. However, if you run multiple ML models across different teams, need sub-millisecond serving latency, or require point-in-time feature retrieval for model training, a dedicated feature store adds capabilities that most CDPs do not natively provide.

How does a feature store improve marketing AI?

A feature store improves marketing AI in three ways. First, it ensures that models are trained and served with identically computed features, eliminating the training-serving skew that causes production models to underperform. Second, it enables feature reuse — a customer engagement score computed once can feed churn models, recommendation engines, and personalization systems simultaneously. Third, it provides low-latency feature serving so that real-time AI decisioning can access the freshest customer context in milliseconds.

What happens when a feature’s source data breaks?

The store keeps serving the last computed value until the pipeline recovers — which is why feature-level monitoring matters more than the breakage itself. Most feature stores are built to serve rather than fail: an upstream job breaks, a column is renamed, and the online store returns the previous value without error. The model keeps scoring, so the damage surfaces through freshness and volume alerts. Decide whether stale values are safe to serve, and backfill the gap afterward.

Who should own a feature store?

Data engineering should own the infrastructure while data science owns the definitions — a feature store struggles when neither side clearly holds one of the two. Engineers operate the pipelines, storage, and serving layer; data scientists define transformation logic, aggregation windows, and feature semantics. The catalog is the meeting point: one registered definition, discovered and reused by anyone. When ownership is ambiguous, features get duplicated with different logic — the exact problem the feature store exists to remove.

  • Data Enrichment — Enhancing customer profiles with additional computed or third-party attributes
  • ETL and ELT — Data transformation patterns that feed feature computation pipelines
  • Data Ingestion — The process of collecting raw data from source systems into data infrastructure
  • Real-Time CDP — A CDP that processes and serves customer data with minimal latency
CDP.com Staff
Written by

The CDP.com staff has collaborated to deliver the latest information and insights on the customer data platform industry.