Skip to main content
NetterTech
Event management for WordPress, done right.

Quickstart

This guide walks you through the happy path: importing event data from The Events Calendar into NetterTech Events using the admin wizard.

Before you begin

  • Back up your database. Run wp db export pre-import-backup.sql or export via your hosting panel. If something unexpected happens, you can restore from this backup.
  • Install and activate NetterTech Events (the free plugin) if you haven’t already.
  • Keep The Events Calendar active during import. The migrator reads from TEC’s database tables – if you deactivate TEC first, the source data is invisible.
  • Note your TEC data counts. The migrator will report imported vs. source counts at the end so you can verify completeness.

Step 1: open the migrate wizard

  1. Go to Events → Migrate in the WordPress admin.
  2. The dashboard shows available source systems and their status (installed, active, data counts, any compatibility warnings).
  3. Click Import next to The Events Calendar.

Step 2: select entity types

Choose which entities to import. Entity types with zero records in TEC are automatically disabled.

EntityWhat it imports
CategoriesTEC event categories
TagsTEC event tags
OrganizersTEC organizer profiles
EventsTEC events with all metadata
OccurrencesRecurring event instances generated from RRULE
Ticket TypesWooCommerce or RSVP ticket products
AttendeesTicket purchasers and RSVPs

For a first-time migration, leave them all selected. If you’re only migrating part of the data, deselect what you don’t want.

Step 3: configure options

Dry Run Mode (on by default) – Validates all data without writing to the database. Always run a dry run first. Catches data issues before they reach the live database.

Batch Size – Records processed per batch. Default 50. Lower (25) uses less memory, higher (200) is faster. For most sites, the default is fine.

Skip Existing (on by default) – Prevents duplicates when re-running an import. You can safely re-run the same import multiple times without creating duplicates.

Incomplete Attendees (off by default) – Import attendees with missing name/email using placeholders (“Unknown Attendee”, generated email). Turn on only if you’re OK with placeholder data.

Orphaned Attendees (off by default) – Assign attendees whose parent event wasn’t imported to a placeholder event. Useful when you’re migrating attendees but not all events.

Default Tickets (off by default) – Create a free “General Admission” ticket for imported events that don’t have ticket types. Past events are excluded.

Background Processing – Run the import via ActionScheduler so it continues even if you close your browser. Recommended for imports over 1,000 records. Requires ActionScheduler (bundled with WooCommerce).

Step 4: confirm and run the dry run

Review the import summary. Click Start Import to begin the dry run. The progress screen shows:

  • Overall progress bar
  • Per-entity progress table (status, counts, results)
  • Activity log with timestamped messages

When the dry run completes, review any warnings or errors before proceeding. If the dry run flags issues, fix them in TEC first, then re-run.

Step 5: run the live import

Once the dry run is clean:

  1. Click Import again to start a new run
  2. Uncheck Dry Run Mode
  3. Click Start Import

The live import uses the same flow but actually writes to the database. Watch the progress screen or close your browser if background processing is enabled – the import will continue.

Step 6: verify the results

After import completes, the completion screen shows:

  • Final counts (imported, skipped, failed per entity)
  • Error details (if any)
  • Links to view imported events

Spot-check a few events in NetterTech Events to confirm:

  • Event titles, dates, and descriptions transferred correctly
  • Venue data is present (NetterTech denormalizes venues into events – see Known Losses)
  • Recurring events show the correct occurrence pattern
  • Attendee counts match TEC

If something goes wrong

Every non-dry-run import can be rolled back:

  1. Go to Events → Migrate → Job Status panel
  2. Find the import you want to undo
  3. Click Rollback
  4. Confirm – all records created by that import will be deleted in reverse dependency order

If you prefer the command line: wp ve-migrate rollback imp_20260412_abc123.

Next steps

  • Read Known Losses to understand what fields don’t round-trip between TEC and NetterTech Events
  • Review the activity log for any warnings you want to address
  • After you’ve verified the import worked, you can optionally deactivate TEC – but don’t remove it until you’re confident