Migrate your WP Project Manager data
WordPress-native project management plugin with unlimited projects, tasks, and users. Attractive for teams already in the WordPress ecosystem, but constrained by plugin-level data storage and no native API for migration.
In its favor
Why people choose WP Project Manager
The signal that keeps WP Project Manager on the shortlist. Sourced from G2, Capterra, and customer scoping calls.
Unlimited user seats across all paid tiers — teams pay per site, not per person, making it cost-predictable for growing organizations.
Native WordPress integration means no separate login, SSO, or account management for teams already living in the WordPress admin.
Kanban boards, Gantt charts, and calendar views are included without feature gating on lower tiers, unlike competitors that restrict views to Enterprise.
Built-in private messenger and comment threads keep project communication contextual to tasks without requiring a separate chat tool.
Time tracking with billable hour logging is available as a premium module, appealing to agencies that need basic project billing.
No public REST API or webhooks — automation requires WordPress plugin development or third-party integration tools like Zapier, limiting scalability for technical teams.
Plugin-only architecture means data is locked inside WordPress database tables; switching tools requires a full manual export or custom SQL migration script.
The WordPress admin UI feels dated compared to modern SaaS PM tools, and performance degrades on sites with hundreds of active projects.
Support response times on non-Enterprise plans frustrate teams hitting bugs or needing urgent configuration help.
Custom Fields and advanced reporting require paid add-ons that add significant cost on top of the base per-site license.
Reasons to switch
Why people leave WP Project Manager
The recurring reasons buyers give for replacing WP Project Manager. Presented as facts, not knocks.
Platform scorecard
Strengths, weaknesses, and where WP Project Manager fits
Grades across six dimensions, plus a SWOT-style view of where the platform shines and where it falls short.
SWOT — strengths, weaknesses, and use-case fit
Strengths
Weaknesses
Where it works
Where it struggles
Pricing tiers
WP Project Manager pricing overview
WP Project Manager prices per site rather than per user, which is unusual in the PM space. Unlimited and Enterprise tiers unlock premium modules like Time Tracker, Invoice, Kanban Board, and Custom Fields. The per-site model makes it attractive for agencies managing multiple client WordPress installs, but per-user pricing on lower tiers can still add up for large internal teams.
WordPress.org (Free)
Tier 1 of 4
Free
What's included
Need help selecting your Project Management?
Book a free 30 minute consultationPricing is informational. FlitStack AI does not bill on WP Project Manager's schedule — see our quote-based pricing →
What gets migrated
WP Project Manager object support
Object-by-object support for WP Project Manager migrations. Per-pair details surface during scoping.
Projects
Fully supportedProjects are the top-level container stored in the wp_cpm_projects table. We extract project metadata (title, description, visibility, dates) and user role assignments. Migration lands as top-level workspaces or projects in the destination.
Tasks
Fully supportedTasks live in wp_cpm_messages with a type=task flag. We map task fields including title, description, due date, priority, and status. The task's project_id foreign key is preserved so task-to-project hierarchy is maintained during migration.
Subtasks
Fully supportedSubtasks are stored in wp_cpm_task_relations, linked to a parent task_id. We reconstruct the subtask hierarchy by preserving the parent-child relationship and landing them as nested children in the destination task model.
Milestones
Fully supportedMilestones are stored as type=milestone records in wp_cpm_messages. We extract milestone title, due date, and linked task_ids. Task-to-milestone associations are migrated as labels or groups in the destination.
Comments
Fully supportedComments are stored in wp_cpm_task_comments linked to task_id. We preserve comment body, author (WordPress user ID), timestamp, and attachment references. Author mapping is handled via the WordPress user table.
File Attachments
Mapping requiredAttachments are stored as WordPress post attachments linked to tasks or comments via post_parent. Files live in the wp-content/uploads directory. We map file paths and re-attach them to the corresponding records in the destination. Large attachment volumes may require a separate file transfer pass.
Custom Fields
Mapping requiredCustom Fields in WP Project Manager are stored as serialized arrays in wp_postmeta. The field structure varies per project setup. We deserialize the data, normalize field names, and map values into the destination's custom field schema. Fields that do not exist in the destination are flagged for manual review.
Users and Assignees
Mapping requiredUsers are WordPress native accounts. Assignee data references wp_users by ID. We map WP user IDs to destination user records, but WordPress roles and capabilities are not directly comparable to most SaaS PM tools — we create a flat assignee list and leave capability mapping for post-migration configuration.
Teams and Permissions
Mapping requiredTeam categories and project-level permissions are stored in plugin-specific options tables. Role assignments per user per project require careful mapping to the destination's access control model, which may not support identical permission granularity.
Time Tracking Entries
Mapping requiredTime tracking is a premium module stored in a separate sub-table. Entries include user_id, task_id, start/end timestamps, and notes. We extract these as time entries and land them in the destination's time tracking object, noting any duration-calculation differences.
Invoices
Not in this platformThe Invoice module stores billing records separately. These are tightly coupled to WooCommerce or Stripe integrations and do not have a clean export path. We do not migrate Invoice records — we recommend exporting invoices as PDF from WP Project Manager manually before migration.
Kanban Board State
Not in this platformKanban column positions and board state are stored in JavaScript-serialized format in wp_postmeta. There is no stable column-schema export. We do not migrate the visual board layout — task data migrates, but the Kanban view configuration resets to the destination default.
Gantt Chart Data
Mapping requiredGantt data is derived from task start dates, due dates, and dependencies stored in wp_cpm_task_relations. We extract dependency links and reconstruct them in the destination's Gantt or dependency model. Custom Gantt-style columns are not natively supported.
Recurring Tasks
Mapping requiredRecurring Task module stores recurrence rules as serialized data in wp_postmeta. We extract the recurrence pattern (daily, weekly, monthly) and next occurrence date. The destination's recurrence engine may interpret these rules differently, so we flag all recurring task records for manual validation.
| Object | Support | Notes |
|---|---|---|
| Projects | Fully supported | Projects are the top-level container stored in the wp_cpm_projects table. We extract project metadata (title, description, visibility, dates) and user role assignments. Migration lands as top-level workspaces or projects in the destination. |
| Tasks | Fully supported | Tasks live in wp_cpm_messages with a type=task flag. We map task fields including title, description, due date, priority, and status. The task's project_id foreign key is preserved so task-to-project hierarchy is maintained during migration. |
| Subtasks | Fully supported | Subtasks are stored in wp_cpm_task_relations, linked to a parent task_id. We reconstruct the subtask hierarchy by preserving the parent-child relationship and landing them as nested children in the destination task model. |
| Milestones | Fully supported | Milestones are stored as type=milestone records in wp_cpm_messages. We extract milestone title, due date, and linked task_ids. Task-to-milestone associations are migrated as labels or groups in the destination. |
| Comments | Fully supported | Comments are stored in wp_cpm_task_comments linked to task_id. We preserve comment body, author (WordPress user ID), timestamp, and attachment references. Author mapping is handled via the WordPress user table. |
| File Attachments | Mapping required | Attachments are stored as WordPress post attachments linked to tasks or comments via post_parent. Files live in the wp-content/uploads directory. We map file paths and re-attach them to the corresponding records in the destination. Large attachment volumes may require a separate file transfer pass. |
| Custom Fields | Mapping required | Custom Fields in WP Project Manager are stored as serialized arrays in wp_postmeta. The field structure varies per project setup. We deserialize the data, normalize field names, and map values into the destination's custom field schema. Fields that do not exist in the destination are flagged for manual review. |
| Users and Assignees | Mapping required | Users are WordPress native accounts. Assignee data references wp_users by ID. We map WP user IDs to destination user records, but WordPress roles and capabilities are not directly comparable to most SaaS PM tools — we create a flat assignee list and leave capability mapping for post-migration configuration. |
| Teams and Permissions | Mapping required | Team categories and project-level permissions are stored in plugin-specific options tables. Role assignments per user per project require careful mapping to the destination's access control model, which may not support identical permission granularity. |
| Time Tracking Entries | Mapping required | Time tracking is a premium module stored in a separate sub-table. Entries include user_id, task_id, start/end timestamps, and notes. We extract these as time entries and land them in the destination's time tracking object, noting any duration-calculation differences. |
| Invoices | Not in this platform | The Invoice module stores billing records separately. These are tightly coupled to WooCommerce or Stripe integrations and do not have a clean export path. We do not migrate Invoice records — we recommend exporting invoices as PDF from WP Project Manager manually before migration. |
| Kanban Board State | Not in this platform | Kanban column positions and board state are stored in JavaScript-serialized format in wp_postmeta. There is no stable column-schema export. We do not migrate the visual board layout — task data migrates, but the Kanban view configuration resets to the destination default. |
| Gantt Chart Data | Mapping required | Gantt data is derived from task start dates, due dates, and dependencies stored in wp_cpm_task_relations. We extract dependency links and reconstruct them in the destination's Gantt or dependency model. Custom Gantt-style columns are not natively supported. |
| Recurring Tasks | Mapping required | Recurring Task module stores recurrence rules as serialized data in wp_postmeta. We extract the recurrence pattern (daily, weekly, monthly) and next occurrence date. The destination's recurrence engine may interpret these rules differently, so we flag all recurring task records for manual validation. |
Gotchas
What to watch for in WP Project Manager migrations
Issues we've hit on past WP Project Manager migrations, tagged by severity. FlitStack AI handles every one — surfacing them up front because buyer engineering teams want to know.
No public API forces database-level migration
WordPress user table is the identity layer
Serialized PHP data in custom fields and settings
Attachment files are not embedded in the database
Invoice and Stripe data lacks clean export path
| Severity | Issue |
|---|---|
| High | No public API forces database-level migration |
| High | WordPress user table is the identity layer |
| Medium | Serialized PHP data in custom fields and settings |
| Medium | Attachment files are not embedded in the database |
| Medium | Invoice and Stripe data lacks clean export path |
Leaving WP Project Manager?
Where WP Project Manager customers move next
5 destinations WP Project Manager can migrate to.
How a WP Project Manager migration works
Four steps, WP Project Manager-specific
Connect
WordPress REST API authentication — cookie auth for in-WP requests, Application Passwords or JWT for external API calls (standard WordPress mechanisms apply). into WP Project Manager. Scopes limited to read-only on the data we move.
Map
We translate WP Project Manager-specific structures (custom fields, objects, value lists) to the destination's model.
Sample
Test with a 50–200 record subset to validate WP Project Manager quirks before production.
Migrate
Full migration with WP Project Manager rate-limit handling. Rollback available throughout.
FAQ
WP Project Manager migration FAQ
Answers to the questions buyers ask most during WP Project Manager migration scoping. Not seeing yours? Book a call.
Can't find your answer?
Walk through your WP Project Manager migration with a real engineer — 30 minutes, free, written quote within 24 hours.
Book a free 30 minute consultationOther project management tools we support
Ready when you are
Migrate WP Project Manager.
Without the rebuild.
Free scoping call with a migration engineer. Tell us about your WP Project Manager setup and destination — written quote back within a business day.