Migration
Source system drift is the gap between how a source system used to behave and how it behaves now. For a founder, the danger is not that systems change. The danger is that changes happen without a shared record, owner, or downstream impact check, so dashboards, exports, automations, and migrations slowly become less trustworthy.
What source system drift means
Source system drift happens when an operational system changes in a way that affects the data people rely on elsewhere. The system might be a CRM, billing platform, product database, support tool, spreadsheet, or internal app.
Drift can be technical, such as a column changing type from number to text. It can also be behavioral, such as a sales team changing how it uses deal stages. Both matter because downstream data systems usually assume the source system still means what it meant when the pipeline, dashboard, or migration plan was created.
A simple example: your CRM has a field called lead_source. At first, it contains values like paid search, referral, and event. Six months later, the growth team starts using the same field to store campaign names because it is convenient. No schema changed, but the meaning changed. That is source system drift.
Why founders notice drift too late
Founders usually notice source system drift when a trusted number becomes hard to explain. Revenue by channel no longer matches the board deck. A migration test produces strange duplicates. A customer health dashboard changes after a support workflow update. The visible symptom appears in analytics, but the root cause often lives in an operational process.
Early-stage companies are especially exposed because the same system often plays several roles at once. A spreadsheet may be the operating system, reporting layer, approval workflow, and temporary database. As the company grows, teams add fields, tabs, statuses, integrations, and manual workarounds. Each small change feels reasonable in isolation. Together, they create drift.
The founder’s job is not to freeze the source system. The job is to make change visible enough that the data foundation can adapt deliberately instead of accidentally.
If a source system can change without anyone considering downstream reports, automations, or migrations, the company does not yet have stable data foundations.
A founder framework for controlling source system drift
Use this framework when your company is replacing spreadsheets, migrating systems, rebuilding dashboards, or cleaning up data foundations. It is intentionally simple because the first control system should be easier than the mess it is trying to prevent.
- Name the source of truth. For each core business object, decide which system owns the official record. Examples include customer, account, subscription, invoice, product usage event, ticket, or employee.
- Assign a business owner. Every important source system needs someone accountable for meaning, not only access. The owner should know how fields are used, which workflows create records, and who can approve changes.
- Document critical fields. Do not document everything first. Start with fields that drive revenue reporting, customer segmentation, operational handoffs, compliance workflows, or executive dashboards.
- Create a change habit. Before a team renames a field, changes allowed values, adds a workflow stage, or repurposes a column, they should note what changed, why, when, and who depends on it.
- Test downstream impact. Check pipelines, dashboards, automations, reverse ETL jobs, exports, and migration scripts that use the changed data.
- Review drift on a schedule. Once a month is often enough for an early company. During active migration, review more often.
This is not bureaucracy for its own sake. It is a lightweight operating rhythm that keeps source systems aligned with the data products built on top of them.
The four types of drift that break data systems
Most source system drift falls into four categories. Separating them helps you diagnose the problem faster and decide who needs to be involved.
Schema drift is a change in the structure of the data. A field is added, removed, renamed, or changes type. This often breaks ingestion or transformation logic quickly.
Semantic drift is a change in meaning. The field still exists, but the business interpretation changes. This is harder to detect because pipelines may keep running while reports become misleading.
Workflow drift is a change in the process that creates or updates records. For example, customer success starts creating renewal opportunities earlier than sales expects. The data changes because the behavior changed.
Integration drift is a change in how tools exchange data. A sync rule, API version, mapping, or automation changes, and downstream records no longer match expectations.
| Drift type | What changes | Typical symptom | Who should be involved |
|---|---|---|---|
| Schema drift | Field names, data types, required fields, table structure | Pipeline failures, load errors, broken transformations | Tool admin, data engineer, analytics engineer |
| Semantic drift | Business meaning of a field or value | Dashboard still runs but the metric is wrong | Business owner, analyst, data leader |
| Workflow drift | How records are created, updated, approved, or closed | Counts shift after a process change | Operations lead, team manager, analyst |
| Integration drift | Sync rules, mappings, APIs, automations | Records differ across tools or arrive late | Systems admin, engineer, data owner |
Diagnostic questions for founders
When a dashboard, migration, or automation behaves strangely, ask these questions before assuming the data team made a mistake.
- Which source system creates the record that appears wrong?
- Did the field, status, workflow, or integration recently change?
- Who is allowed to edit the field or configuration?
- Is the problem affecting all historical data, only new records, or a specific date range?
- Did the definition of the metric change, or only the system behavior?
- Are there manual exceptions that never made it into documentation?
- Does the same business object exist in more than one system with conflicting values?
These questions move the conversation from blame to evidence. They also reveal whether the issue is a one-time cleanup or a recurring control problem.
| Signal | Likely drift pattern | First response |
|---|---|---|
| A category suddenly appears in a dashboard | New picklist value or repurposed field | Check recent admin changes and update metric logic if approved |
| A migration test creates many duplicates | Duplicate source of truth or weak identity rules | Define matching rules before cutover |
| Historical trend changes after a workflow update | Workflow drift or semantic drift | Mark the change date and review metric definitions |
| Pipeline fails after a tool configuration change | Schema drift | Restore compatibility or update ingestion and transformation logic |
| Two departments report different numbers for the same object | Conflicting ownership or definitions | Name one business owner and reconcile definitions |
Why source system drift matters during migration
Migration exposes source system drift because it forces old assumptions into a new structure. A field that looked harmless in the original system may become a blocking decision in the target system. Duplicate customer records, inconsistent lifecycle stages, overloaded notes fields, and undocumented exceptions can all slow or damage a migration.
Before migrating, founders should ask for a drift review, not only a data export. The review should identify which fields are trusted, which fields are stale, which fields changed meaning over time, and which workflows must be redesigned rather than copied.
A common mistake is to treat migration as a technical transfer: move the records, map the fields, validate the counts. That is necessary, but incomplete. If the source system has drifted, a clean transfer can still reproduce bad logic in a better-looking tool.
Do not migrate drift blindly. A new tool can make old definitions look cleaner while preserving the same confusion.
Practical controls that do not slow the company down
You do not need enterprise governance to reduce source system drift. You need a few controls that match the maturity of the business.
- Field dictionary for critical fields. Define the field name, owner, allowed values, meaning, and downstream uses.
- Change log. Record meaningful configuration, workflow, and field changes in one shared place.
- Access boundaries. Limit who can edit critical fields, picklists, sync rules, and automation logic.
- Pipeline checks. Monitor for missing values, unexpected categories, duplicate records, and sudden volume changes.
- Metric ownership. Assign one person or team to approve changes that affect company-level metrics.
- Migration freeze windows. During cutover, pause nonessential source system changes or route them through a formal review.
The right control is the smallest one that makes important change visible before it causes avoidable confusion.
For every critical field, you should be able to answer three questions: what does it mean, who owns it, and what breaks if it changes?
| Company stage | Reasonable control | Avoid |
|---|---|---|
| Founder-led, spreadsheet-heavy | One owner per core spreadsheet and a change log for critical columns | Turning every tab into formal governance |
| Early team with CRM or billing system | Field dictionary for revenue, customer, and lifecycle fields | Letting every admin freely change reporting fields |
| Preparing for migration | Drift review, field retirement list, migration freeze window | Copying all legacy fields into the new tool |
| Scaling analytics team | Automated tests, documented source contracts, metric ownership | Assuming pipeline monitoring catches meaning changes |
Common failure modes
Source system drift usually becomes expensive when teams normalize small exceptions. Watch for these patterns.
- The convenient field. A team reuses an existing field because adding a new one feels slow. The old meaning becomes mixed with a new meaning.
- The hidden workflow. A manual process lives in one person’s head, so the source data cannot be interpreted without that person.
- The silent admin change. A tool admin updates stages, fields, or permissions without checking reporting and pipeline dependencies.
- The duplicate source of truth. Two systems both claim to own customer status, subscription state, or revenue category.
- The historical rewrite. A new definition is applied to current data, but old records remain under the previous definition without a version marker.
- The migration copy-paste. A company moves every field into the new system without deciding what should be retired, renamed, or rebuilt.
These are not just data team problems. They are operating model problems that show up in data.
What to do this week
If you suspect source system drift, do not begin with a large documentation project. Start with one business object that matters, such as customer, account, order, subscription, or lead.
- List the systems where that object appears.
- Choose the system that should be treated as the source of truth.
- Identify the ten fields most likely to affect reporting, operations, or migration.
- Ask the business owner what each field means and how it is maintained.
- Compare that explanation with actual values in the system.
- Flag fields with unclear meaning, inconsistent usage, high manual editing, or duplicate ownership.
- Create a simple change log for future edits.
This small exercise often reveals the real state of your data foundations faster than a broad audit.
Key takeaways
- Source system drift is not only a technical schema problem; it is also a change in meaning, workflow, or integration behavior.
- Founders should care because drift weakens dashboard trust, increases migration risk, and makes operational decisions harder to explain.
- The best first controls are simple: name the source of truth, assign an owner, document critical fields, keep a change log, and test downstream impact.
- During migration, review drift before mapping fields so you do not rebuild the same confusion in a new system.
- Start with one important business object and a small set of critical fields instead of trying to govern every system at once.
Next step
Pick one core object, such as customer or subscription, and run a 60-minute drift review: source of truth, owner, critical fields, recent changes, downstream reports, and known exceptions.
- Read Source System Drift: Plain-English Guide: A practical guide to spotting, explaining, and controlling source system changes before they break migrations, pipelines, and dashboards.
- Read Source System Drift: Migration Playbook: A practical way to find, classify, and control source changes before they break a migration or weaken AI-ready data.