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.sqlor 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
- Go to Events → Migrate in the WordPress admin.
- The dashboard shows available source systems and their status (installed, active, data counts, any compatibility warnings).
- 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.
| Entity | What it imports |
|---|---|
| Categories | TEC event categories |
| Tags | TEC event tags |
| Organizers | TEC organizer profiles |
| Events | TEC events with all metadata |
| Occurrences | Recurring event instances generated from RRULE |
| Ticket Types | WooCommerce or RSVP ticket products |
| Attendees | Ticket 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:
- Click Import again to start a new run
- Uncheck Dry Run Mode
- 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:
- Go to Events → Migrate → Job Status panel
- Find the import you want to undo
- Click Rollback
- 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