Stage Deletion Protection

April 23, 2026

Stage Deletion & Contact Protection

Understand how PloverCRM protects your data when deleting stages and what happens to contacts in deleted stages.


Overview #

PloverCRM includes built-in protection mechanisms to prevent accidental data loss when deleting contact stages. When you delete a stage, the system ensures all contacts are safely moved to a default stage before the deletion completes.


How Stage Deletion Works #

Deletion Process

When you attempt to delete a stage:

  1. Check for Contacts: System checks if any contacts are in that stage
  2. Move Contacts: If contacts exist, they’re moved to the default stage
  3. Confirm Deletion: You’re asked to confirm the deletion
  4. Delete Stage: The stage definition is removed
  5. Update References: All references to the stage are cleaned up

Default Stage Behavior

  • Contacts are moved to the first stage in your pipeline (typically “New” or “Lead”)
  • You can configure which stage is the default in settings
  • The move is logged in contact history
  • No contact data is lost during the process

Deleting a Stage #

Via Settings Page

  1. Navigate to PloverCRM > Settings
  2. Click on the PloverCRM tab
  3. Scroll to the Stages section
  4. Find the stage you want to delete
  5. Click the Delete button (trash icon)
  6. Review the warning message
  7. Confirm the deletion

Warning Message

Before deletion, you’ll see a message like:

Warning: This stage contains 47 contacts. Deleting it will move all contacts to the “New” stage. This action cannot be undone. Are you sure?

Confirmation Required

  • You must explicitly confirm the deletion
  • The system shows how many contacts will be affected
  • You can cancel at any time before confirming

What Happens to Contacts #

Automatic Migration

All contacts in the deleted stage are:

  • Moved to the default stage (usually “New”)
  • Preserved with all their data intact
  • Logged in their activity history
  • Notified (if notifications are enabled)

Contact History

The stage change is recorded in each contact’s history:

Stage changed from "Old Stage Name" to "New" (reason: stage deleted)
Date: February 3, 2026 at 2:30 PM

No Data Loss

  • All contact information is preserved
  • Custom fields remain intact
  • Notes and activities are maintained
  • Lists and tags are unchanged
  • Ownership is preserved

Protected Stages #

Cannot Delete Default Stage

You cannot delete the default stage (the stage contacts are moved to when other stages are deleted). To delete it:

  1. First, set a different stage as the default
  2. Then delete the original default stage

Cannot Delete Last Stage

You must always have at least one stage in your system. If you try to delete the last remaining stage, you’ll see:

Error: Cannot delete the last stage. You must have at least one stage in your system.


Best Practices #

Before Deleting a Stage

  1. Review Contacts: Check how many contacts are in the stage
  2. Manual Migration: Consider manually moving contacts to appropriate stages first
  3. Team Communication: Notify your team before deleting stages
  4. Backup Data: Export contacts if you want a backup
  5. Check Integrations: Verify external systems don’t reference the stage

Alternatives to Deletion

Instead of deleting a stage, consider:

  • Renaming it to repurpose it
  • Moving Contacts manually to other stages
  • Archiving (if your workflow supports it)
  • Hiding it from active use (via custom code)

After Deletion

  1. Verify Migration: Check that contacts were moved correctly
  2. Update Documentation: Update team documentation
  3. Review Reports: Ensure reports still work correctly
  4. Check Integrations: Verify external systems adapted to the change

Recovering from Accidental Deletion #

No Built-In Undo

PloverCRM doesn’t have a built-in undo feature for stage deletion. Once confirmed, the deletion is permanent.

Recovery Options

If you accidentally delete a stage:

  1. Recreate the Stage: Create a new stage with the same name
  2. Manual Reassignment: Manually move contacts back to the new stage
  3. Database Restore: Restore from a database backup (if available)
  4. Contact History: Use contact history to identify which contacts were affected

Prevention

  • Always read the warning message carefully
  • Double-check the stage name before confirming
  • Consider the number of affected contacts
  • Test in a staging environment first

Technical Details #

Database Operations

When deleting a stage:

-- 1. Get all contacts in the stage
SELECT post_id FROM wp_postmeta
WHERE meta_key = 'plover_crm_stage'
AND meta_value = 'old-stage-slug';

-- 2. Update contacts to default stage
UPDATE wp_postmeta
SET meta_value = 'new-stage-slug'
WHERE meta_key = 'plover_crm_stage'
AND meta_value = 'old-stage-slug';

-- 3. Delete stage definition
DELETE FROM wp_options
WHERE option_name = 'plover_crm_stages';

Performance Considerations

  • Deleting stages with many contacts may take a few seconds
  • The operation is performed in a transaction (all or nothing)
  • Large databases (10,000+ contacts) may experience brief slowdown
  • The system handles the migration efficiently

API Impact

  • API calls referencing the deleted stage will return errors
  • Mobile apps will sync the stage removal
  • Webhooks may need updating if they reference the stage
  • External integrations should handle stage deletion gracefully

Troubleshooting #

Can’t Delete Stage

Problem: The delete button is disabled or doesn’t work.

  • Check if it’s the default stage (can’t delete default)
  • Verify you have permission to delete stages
  • Check if it’s the last remaining stage
  • Try a different browser
  • Check for JavaScript errors in console

Contacts Not Moved Correctly

Problem: Some contacts weren’t moved to the default stage after deletion.

  • Refresh the contact list
  • Clear WordPress cache
  • Check contact history to verify the move
  • Manually move any remaining contacts
  • Contact support if data appears lost

Error During Deletion

Problem: An error message appears when trying to delete a stage.

  • Check database connection
  • Verify you have sufficient permissions
  • Try again after a few minutes
  • Check server error logs
  • Contact support if the issue persists

Stage Reappears After Deletion

Problem: A deleted stage reappears in the list.

  • Clear WordPress cache
  • Clear browser cache
  • Check if another admin recreated it
  • Verify the deletion completed successfully
  • Check for plugin conflicts

FAQ #

Q: Can I recover a deleted stage?
A: No, stage deletion is permanent. You’ll need to recreate the stage and manually reassign contacts.

Q: What happens to contacts in a deleted stage?
A: They’re automatically moved to the default stage (usually “New” or “Lead”). No contact data is lost.

Q: Can I delete multiple stages at once?
A: No, stages must be deleted one at a time to ensure data integrity and provide clear feedback.

Q: Will deleting a stage affect my reports?
A: Historical reports may show the deleted stage name. New reports will only show active stages.

Q: Can I prevent certain stages from being deleted?
A: Not through the UI, but you can add custom code to protect specific stages from deletion.


Last Updated: February 3, 2026
Applies To: PloverCRM 2.0+