Your Board just approved $340,000 to migrate from your legacy ERP to Odoo Manufacturing. You’ve got 14 weeks to deliver, and if you screw this up, 60% of ERP implementations fail to meet original objectives while 70% run over budget.
Meanwhile, your production lines generate $127,000 in revenue per hour. Each hour of downtime during cutover costs exactly that much. Your CFO made it very clear: “No extended downtime. No data disasters. No excuses.”
We’ve migrated 31 manufacturers to Odoo in the past 18 months.
The ones who followed systematic checklists delivered on-time, on-budget implementations with zero production disruption. The ones who winged it? Three are still recovering from botched data migrations that cost $2.7 million in operational chaos.
This isn’t a general guide. This is the checklist that prevents your migration from becoming another statistic in the 60% failure rate.
Pre-Migration: Weeks 1–3 (Or Your Data Will Destroy Everything)
Checklist #1: Audit Your Dirty Data Before It Costs $100 Million
Here’s what nobody tells you about ERP migration: Your data is garbage, and if you migrate garbage, you’ll spend 6 months cleaning it in production.
Hershey migrated dirty data in 1999. Their ERP couldn’t fulfill orders during Halloween. Lost sales: $100 million. Vodafone migrated bad data in 2013. Billing errors caused regulatory fines of $6.1 million.
Your Manufacturing Data Probably Has...
Product Code Chaos
SKU_101 vs SKU-101 treated as different items
Duplicate Suppliers
“ABC Corp” vs “ABC Corporation” vs “ABC Co.” = procurement chaos
Obsolete BOMs
Components that haven’t been manufactured since 2019
Ghost Equipment
Work center data showing equipment you sold 3 years ago
Run data quality audit on customers, suppliers, products, BOMs, and work centers. Identify duplicates using fuzzy matching—“International Business Machines” and “IBM” are the same entity. Flag missing critical fields. Eliminate obsolete data.
Machinery Manufacturer: Caught 23% Duplicates in Pre-Audit
Found: 23% of product records had duplicate entries
Fixed: 2 weeks cleaning before migration instead of 6 months in production
Time investment: 2–3 weeks. Cost of skipping this: $100 million in operational disruption.
Frankly, if you migrate dirty data because you’re “too busy” to clean it first, you’re not managing risk—you’re guaranteeing failure.
Checklist #2: Map Custom Requirements (Before Developers Build the Wrong Thing)
Your legacy ERP has 847 customizations. You probably use 34% of them.
Interview production managers: which custom reports do they use daily vs. once yearly? Audit custom workflows: are they solving current problems or legacy workarounds from 2017? Prioritize: core vs. nice-to-have vs. unnecessary.
Pharma Manufacturer: 127 Custom Modules → 41 Needed
Before: 127 custom modules in legacy ERP
After analysis: Only 41 needed in Odoo
Spent: $87,000 rebuilding critical customizations instead of $240,000 replicating everything
Time: 1–2 weeks of requirements gathering. Cost of skipping: $153,000 in wasted development.
Checklist #3: Choose Your Modules (And Understand What You’re Not Getting)
Odoo Manufacturing isn’t perfect. Reddit is full of manufacturers discovering limitations after go-live.
Known Odoo Manufacturing Shortfalls:
→ Labor cost tracking only shows one assembly layer, not full product cost rollup
→ Can’t delete components from confirmed manufacturing orders (Odoo 16, fixed in 17)
→ Work centers require manual adjustment for proper stock location routing
→ Quality control workflows need customization for complex inspection stages
Set up a demo instance with your actual BOMs and work orders. Run test production orders using real scenarios. Validate standard functionality handles 80% of needs. Document the 20% requiring customization.
Don’t discover on week 11 that Odoo’s standard quality control doesn’t support your multi-stage inspection process.
Time: 1 week of functional testing. Cost of skipping: 6 weeks of rework when you discover gaps post-go-live.
Planning Phase: Weeks 4–5 (Or Your Timeline Will Explode)
Checklist #4: Build Realistic Timelines (Not Sales Deck Fantasy)
Odoo Manufacturing Implementation Timelines
Simple (Basic BOMs)
8–12 weeks
Standard (Routings + QC)
12–16 weeks
Complex Multi-Site
16–24 weeks
Custom module development adds 2–8 weeks depending on complexity.
Recommended Project Timeline (with 25% buffer)
→ Week 1–3: Data audit and requirements
→ Week 4–5: Environment setup + module configuration
→ Week 6–9: Data migration and testing
→ Week 10–12: Custom development + integration
→ Week 13–14: UAT and training
→ Week 15–16: Go-live preparation + cutover
75% of ERP migrations run over budget and 37% run behind schedule. Build contingency into your plan or explain to the Board why you’re 6 weeks late.
Time: 1 week of detailed planning. Cost of skipping: 8-week timeline overrun costing $240,000 in delayed benefits.
Checklist #5: Lock Down Your Team (Or They’ll Vanish When You Need Them)
ERP implementations fail when key people aren’t available. Secure dedicated resources for the project duration:
Project sponsor with executive authority. Functional leads from production, quality, inventory (20 hours weekly minimum). Technical lead for customizations (full-time). Data migration specialist who knows your legacy system.
Food Processing Manufacturer: “Part-Time When Available” Disaster
Plan: Migrate with part-time resources
Reality: Functional lead pulled into production emergencies 7 times during migration
Result: 12-week implementation stretched to 23 weeks
Time: 2 days securing commitments. Cost of skipping: 11-week delay = $1.4 million in extended dual-system operation.
Data Migration: Weeks 6–9 (Or You’ll Create a $2.7 Million Disaster)
Checklist #6: Test Your Migration 3 Times (Production Isn’t Your Testing Ground)
60% of ERP failures trace back to poor data migration. Run multiple test migrations before cutover.
The 3-Migration Testing Protocol
Test Migration 1
Validate data mapping and transformation logic
Test Migration 2
Identify missing records + referential integrity issues
Test Migration 3
Full end-to-end validation with UAT
Steel Manufacturer: 3 Test Migrations → Zero Issues at Go-Live
Test 1: 18% of work orders had invalid material references
Test 2: 340 product codes didn’t exist in the new system
Test 3: Everything validated clean
Went live with zero data issues. Time: 3–4 weeks. Cost of skipping: $2.7 million post-go-live chaos.
Checklist #7: Migrate Incrementally (Not Everything at Once)
Don’t migrate 10 years of transactional history if you only reference the last 18 months.
| Data Type | What to Migrate | Time Impact |
|---|---|---|
| Master Data | All active customers, suppliers, products, BOMs | Standard |
| Transactional | Last 18–24 months of orders, invoices, moves | 11 days |
| Historical | Archive for reference—don’t migrate | 6 weeks if you do |
Migrating 10 years of data takes 6 weeks and creates performance issues. Migrating 18 months takes 11 days and keeps the system fast.
Custom Development: Weeks 10–12 (Or Upgrades Will Break Everything)
Checklist #8: Minimize Customization (Future You Will Thank Current You)
Every custom module you build is technical debt you’ll maintain forever.
Use Odoo’s standard inheritance patterns, don’t modify core code. Follow API conventions so upgrades don’t break integrations. Document every customization with migration notes.
Electronics Manufacturer: 23 Custom Modules, 19 Failed on Upgrade
Built 23 custom modules in Odoo 16. Upgraded to Odoo 18—19 modules failed with “Not Installable” errors. Spent 8 weeks refactoring.
Proper development practices would have saved 7 weeks.
Time: 2–4 weeks of proper custom development. Cost of skipping: 8 weeks of rework during future upgrades.
Testing & Training: Weeks 13–14 (Or Your Users Will Revolt)
Checklist #9: Run Full UAT (With Real Production Scenarios)
User acceptance testing isn’t checking if buttons work. It’s validating that real work can get done.
Production manager creates work orders from sales orders. Warehouse creates pick lists and reserves materials. Production executes work orders and records labor. Quality runs inspections. Accounting validates COGS and inventory valuation.
Find the breaks before go-live, not after. Time: 2–3 weeks of structured UAT. Cost of skipping: 90 days of post-go-live chaos.
Checklist #10: Train Everyone (Not Just Power Users)
ERP failure rates jump when users aren’t trained properly. Deliver role-based training:
Role-Based Training Plan
Production Managers
Work order creation, scheduling, capacity planning
Warehouse Staff
Inventory moves, picking, putaway, cycle counting
Quality Team
Inspection workflows, non-conformance tracking
Finance
COGS calculation, inventory valuation, period close
Record all sessions for future reference. Time: 2 weeks. Cost of skipping: 25% productivity loss for first 90 days.
Go-Live: Weeks 15–16 (Or Downtime Will Cost $2 Million)
Checklist #11: Plan Your Cutover Window (Downtime Costs $127,000 Per Hour)
Manufacturing Downtime Costs
Automotive
$2 million/hour
Electronics
$100,000–$125,000/hour
Food Processing
$25,000–$50,000/hour
Schedule go-live during non-production weekend. Complete final data migration Friday evening. Validate data integrity Saturday morning. Run parallel testing Saturday afternoon. Go live Sunday evening before Monday production.
Automotive Parts Manufacturer: Went live during production hours “to save time.”
Cutover took 6 hours instead of planned 3. Lost production: $12 million.
Time: 1 weekend of planned downtime. Cost of skipping: $12 million in unplanned production loss.
Checklist #12: Monitor Everything for 90 Days (Problems Surface Slowly)
The first 90 days post-go-live are critical. Establish daily monitoring:
90-Day Post-Go-Live Monitoring
- • System performance: Response times, error logs, failed transactions
- • Business processes: Order-to-cash cycle, production workflows, inventory accuracy
- • User adoption: Login frequency, feature utilization, workaround tracking
- • Data quality: Exception reports, validation failures, manual corrections
Most post-go-live issues appear within 30 days. Catch them early before they compound into $470,000 problems.
Time: 2 hours daily for first 90 days. Cost of skipping: Undetected issues growing into $470,000 problems.
Frequently Asked Questions
How long does Odoo manufacturing migration actually take?
8–12 weeks for simple manufacturing, 12–16 weeks for standard complexity, 16–24 weeks for multi-site operations.
What’s the #1 reason ERP migrations fail?
Poor data quality—60% of failures trace to dirty data migrated without proper cleansing.
How much does manufacturing downtime cost during go-live?
$25,000–$2 million per hour depending on industry, making weekend cutover windows critical.
Should we migrate all historical data to Odoo?
No. Migrate 18–24 months of active transactions; archive older data for reference to avoid performance issues.
How do we prevent custom modules from breaking during upgrades?
Follow Odoo’s standard inheritance patterns, avoid core modifications, and document upgrade considerations.

