Technical Guides

Migrating from GoAutoDial to VICIdial: Step-by-Step

ViciStack Team · · 16 min read
VICIdial GoAutoDial migration setup database

Last updated: March 2026 | Reading time: ~16 minutes

You are running GoAutoDial and something is not right. Maybe the admin interface keeps throwing PHP errors after an update. Maybe you need a VICIdial feature that GoAutoDial’s custom GUI does not expose. Maybe you just realized that GoAutoDial CE 4.0 shipped with VICIdial 2.14-something from 2019, and you are running a contact center on software that is six years behind the current SVN trunk.

Whatever brought you here, the decision to migrate from GoAutoDial to VICIdial is almost always the correct one. GoAutoDial served a purpose --- it made VICIdial more approachable for people who were intimidated by the native admin interface. But that purpose has been overtaken by GoAutoDial’s stagnating development, VICIdial’s continuous improvement, and the operational reality that the extra GUI layer creates more problems than it solves.

This guide covers the complete migration path: what GoAutoDial is at a technical level, why migration makes sense in 2026, how to inventory your existing system, step-by-step data migration, the fresh install path, configuration mapping between GoAutoDial and VICIdial, testing procedures, and the rollback plan you should have but hopefully will not need.

ViciStack migrates GoAutoDial operations to optimized VICIdial every month. We handle the data migration, carrier reconfiguration, and agent retraining. Let us handle your migration.


What GoAutoDial Actually Is (Technically)

This is important to understand because it determines what your migration actually involves.

GoAutoDial is not a separate dialer. It is VICIdial with a custom PHP frontend bolted on top. Specifically:

  • GoAutoDial CE (Community Edition) 4.x runs VICIdial 2.14 underneath, typically SVN revision 2900-3200 (compared to the current trunk at 3939+)
  • The GoAutoDial GUI is a separate PHP application (usually at /goautodial/ on the web server) that reads from and writes to the same MySQL asterisk database that VICIdial uses
  • The underlying Asterisk instance, cron jobs, screen processes, and telephony layer are all standard VICIdial
  • GoAutoDial-specific tables in the database (prefixed with go_ or goautodial_) store GUI preferences, user sessions, and configuration that the GoAutoDial interface needs but VICIdial does not

What this means for migration: your core dialer data (campaigns, lists, leads, agents, carriers, recordings, CDR) is already in VICIdial-format tables. The GoAutoDial GUI is a presentation layer on top of those tables. Migrating to VICIdial is primarily about (1) installing a current VICIdial build and (2) importing your existing data. You are not converting between two different systems --- you are upgrading the same system and removing a deprecated interface layer.

GoAutoDial-Specific Components

These are the things GoAutoDial adds on top of VICIdial that you will leave behind:

ComponentGoAutoDialVICIdial Equivalent
Admin GUICustom PHP dashboard at /goautodial/Native VICIdial admin at /vicidial/admin.php
Agent interfaceGoAutoDial agent panelVICIdial agent screen at /agc/vicidial.php
User managementGoAutoDial user management with rolesVICIdial User Groups with permission levels
ReportsGoAutoDial report dashboardVICIdial built-in reports + custom SQL
API layerGoAutoDial API wrapperVICIdial non-agent API (more capable)
BrandingGoAutoDial logos and stylingVICIdial default or custom branding

The GoAutoDial agent panel is worth discussing specifically. Many operations use GoAutoDial because agents find the GoAutoDial agent interface more visually appealing than VICIdial’s default agent screen. This is a valid concern, but VICIdial’s agent screen is highly customizable through CSS, custom scripts, and the agent screen configuration options. The visual gap between GoAutoDial’s agent panel and a properly customized VICIdial agent screen is minimal.


Why Migrate: The Case for Leaving GoAutoDial

Development Has Stalled

GoAutoDial CE 4.0 was released in 2019. Since then:

  • No major version releases
  • Security patches lag months to years behind VICIdial SVN
  • The community forums are largely inactive
  • The development team has shifted focus to GoAutoDial Cloud (their hosted offering) and away from the self-hosted CE edition

Meanwhile, VICIdial SVN trunk has received continuous updates. Between 2019 and 2026, VICIdial added ConfBridge support, PHP 8 compatibility, two-factor authentication, ViciPhone v3.0 WebRTC, new API endpoints, AMD improvements, STIR/SHAKEN awareness, and dozens of bug fixes and performance improvements. None of these are available in GoAutoDial CE unless you manually update the VICIdial component underneath --- which risks breaking the GoAutoDial GUI layer.

Security Exposure

Running GoAutoDial CE in 2026 means running:

  • An outdated VICIdial build with known security vulnerabilities that have been patched in newer SVN revisions
  • An additional PHP application (the GoAutoDial GUI) that increases your attack surface. The GoAutoDial GUI has its own authentication system, session management, and database access patterns that are separate from VICIdial’s. More code means more potential vulnerabilities
  • CentOS 7 in most cases --- GoAutoDial CE 4.0’s installer targets CentOS 7, which reached end-of-life in June 2024. No security patches, no kernel updates, no TLS library updates

If you are handling consumer financial data, healthcare information, or operating under any compliance framework that requires current security patches, GoAutoDial CE on CentOS 7 is a compliance violation waiting to happen.

The GUI Layer Adds Complexity Without Proportional Benefit

The GoAutoDial GUI duplicates functionality that VICIdial already provides. This duplication creates confusion:

  • Settings changed in the GoAutoDial GUI sometimes do not propagate correctly to the underlying VICIdial tables
  • Settings changed directly in VICIdial’s admin interface are not always reflected in the GoAutoDial GUI
  • Troubleshooting requires checking two admin interfaces instead of one
  • Documentation and community support for GoAutoDial is sparse compared to VICIdial, which has the vicidial.org forums, the EFLO wiki, and a global community of administrators

VICIdial SVN Trunk is Actively Developed

Matt Florell and the VICIdial Group continue active development. The SVN trunk gets regular commits. The vicidial.org forums are active. The ViciBox distribution is maintained and updated. PoundTeam provides professional support. The ecosystem is healthy. Staying on GoAutoDial means opting out of this ecosystem.


Pre-Migration Assessment

Before you touch anything, inventory your current GoAutoDial/VICIdial installation completely. This inventory determines your migration scope and identifies potential complications.

Data Inventory Checklist

Run these queries on your GoAutoDial MySQL database to understand what you are working with:

-- Campaign count and configuration
SELECT campaign_id, campaign_name, active, dial_method, auto_dial_level
FROM vicidial_campaigns
ORDER BY active DESC, campaign_id;

-- List inventory with lead counts
SELECT vl.list_id, vl.list_name, vl.campaign_id, vl.active,
       COUNT(vll.lead_id) as lead_count
FROM vicidial_lists vl
LEFT JOIN vicidial_list vll ON vl.list_id = vll.list_id
GROUP BY vl.list_id
ORDER BY lead_count DESC;

-- Total leads by status
SELECT status, COUNT(*) as count
FROM vicidial_list
GROUP BY status
ORDER BY count DESC;

-- User/agent inventory
SELECT user_group, COUNT(*) as user_count, active
FROM vicidial_users
GROUP BY user_group, active;

-- Carrier/trunk configuration
SELECT carrier_id, carrier_name, active, protocol, server_ip
FROM vicidial_server_carriers
ORDER BY active DESC;

-- Inbound groups
SELECT group_id, group_name, active
FROM vicidial_inbound_groups
ORDER BY active DESC;

-- Recording volume
SELECT DATE_FORMAT(start_time, '%Y-%m') as month,
       COUNT(*) as recordings,
       ROUND(SUM(length_in_sec)/3600, 1) as total_hours
FROM recording_log
GROUP BY month
ORDER BY month DESC
LIMIT 12;

-- GoAutoDial-specific tables (to understand what's GoAutoDial-only)
SHOW TABLES LIKE 'go_%';
SHOW TABLES LIKE 'goautodial_%';

What to Document

Create a migration document (spreadsheet or document) with:

  1. Campaigns: Name, ID, dial method, active/inactive, custom settings
  2. Lists: List IDs, campaign assignments, lead counts, active status
  3. Users: User IDs, user groups, permission levels, active agents vs. managers
  4. Carriers: Carrier names, SIP credentials, IPs, codec settings, trunk count
  5. DIDs: DID numbers, routing destinations (inbound groups, agents, IVRs)
  6. Custom scripts: Agent screen scripts, web form URLs, custom JavaScript
  7. Recordings: Total volume, retention policy, storage location
  8. Cron jobs: Any custom cron jobs beyond the default VICIdial set
  9. Integrations: CRM connections, API consumers, webhook destinations, Start Call URLs
  10. Custom code: Any modifications to VICIdial or GoAutoDial PHP files

Carrier Coordination

Contact your SIP carrier(s) before migration day:

  • Inform them you will be migrating to a new server
  • Get the new server’s IP whitelisted in advance (if you are moving to new hardware)
  • Confirm SIP credentials are documented (username, password, registration server, codec preferences)
  • Verify any IP-based authentication will work with your new server IP
  • Ask about their SIP registration cooldown --- some carriers lock out rapid re-registrations, which can cause a 5-15 minute outage if you switch servers too quickly

This is the clean path. It gives you a modern OS, current VICIdial, and a fresh start. It requires a new server (or a reformatted existing server) and a maintenance window.

Step 1: Build the New Server

Follow the VICIdial setup guide to install ViciBox 12.0.2 on your new server. If you are deploying in the cloud, see the cloud deployment guide.

Key points:

  • ViciBox 12.0.2 runs on OpenSuSE Leap 15.6 with Asterisk 18 and MariaDB 10.11
  • Set a static IP and configure DNS
  • Run vicibox-express for a single-server setup
  • Verify the base installation works (login to admin with 6666/1234)

Step 2: Export Data from GoAutoDial

On your GoAutoDial server, export the core VICIdial tables. These are the same tables on both systems:

#!/bin/bash
# export_vicidial_data.sh - Run on GoAutoDial server
EXPORT_DIR="/root/migration_export"
MYSQL_PASS="your_mysql_root_password"
DB="asterisk"

mkdir -p ${EXPORT_DIR}

# Core campaign and configuration tables
TABLES=(
    "vicidial_campaigns"
    "vicidial_campaign_stats"
    "vicidial_lists"
    "vicidial_list"
    "vicidial_users"
    "vicidial_user_groups"
    "vicidial_inbound_groups"
    "vicidial_server_carriers"
    "vicidial_call_menu"
    "vicidial_remote_agents"
    "vicidial_scripts"
    "vicidial_filters"
    "vicidial_lead_filters"
    "vicidial_statuses"
    "vicidial_campaign_statuses"
    "vicidial_phone_codes"
    "vicidial_dnc"
    "vicidial_campaign_dnc"
    "vicidial_inbound_dids"
    "vicidial_did_log"
    "vicidial_callbacks"
    "vicidial_closer_log"
    "vicidial_log"
    "recording_log"
    "vicidial_list_alt_phones"
)

for TABLE in "${TABLES[@]}"; do
    echo "Exporting ${TABLE}..."
    mysqldump -u root -p"${MYSQL_PASS}" --single-transaction \
        --no-create-info --complete-insert \
        ${DB} ${TABLE} > ${EXPORT_DIR}/${TABLE}.sql
    echo "  Rows: $(wc -l < ${EXPORT_DIR}/${TABLE}.sql)"
done

# Also export table structures for reference
mysqldump -u root -p"${MYSQL_PASS}" --no-data \
    ${DB} > ${EXPORT_DIR}/schema_only.sql

echo "Export complete. Files in ${EXPORT_DIR}/"
ls -lh ${EXPORT_DIR}/

Important: We use --no-create-info because the new ViciBox installation already has the correct table schemas for the current VICIdial version. We only want the data rows. The schema on the new server may have additional columns that the old server does not have --- that is expected and the import will populate those new columns with defaults.

Step 3: Transfer Data to New Server

# From the GoAutoDial server
scp -r /root/migration_export root@NEW_SERVER_IP:/root/migration_import/

# Also transfer recordings if you want them on the new server
rsync -avz --progress /var/spool/asterisk/monitor/ \
    root@NEW_SERVER_IP:/var/spool/asterisk/monitor/

Recording transfer can take hours or days depending on volume. Start this well before your migration window. You can run rsync incrementally --- it will only transfer new/changed files on subsequent runs.

Step 4: Prepare the New Server for Import

Before importing data, you need to handle potential conflicts with the default ViciBox data:

#!/bin/bash
# prepare_import.sh - Run on NEW ViciBox server
MYSQL_PASS="your_new_mysql_root_password"
DB="asterisk"

# Back up the default ViciBox data (just in case)
mysqldump -u root -p"${MYSQL_PASS}" ${DB} > /root/vicibox_default_backup.sql

# Clear default sample data that would conflict with imports
mysql -u root -p"${MYSQL_PASS}" ${DB} << 'EOF'
-- Remove default campaigns (keep the schema, remove rows)
DELETE FROM vicidial_campaigns WHERE campaign_id IN ('TESTCAMP', 'SAMPLE');

-- Remove default users EXCEPT admin (6666) and API users you'll need
DELETE FROM vicidial_users WHERE user NOT IN ('6666', 'VDAD', 'VDCL');

-- Remove default user groups EXCEPT ADMIN
DELETE FROM vicidial_user_groups WHERE user_group != 'ADMIN';

-- Clear default lists
DELETE FROM vicidial_lists WHERE list_id < 200;

-- Clear default inbound groups
DELETE FROM vicidial_inbound_groups WHERE group_id IN ('AGENTDIRECT', 'SALESLINE');

-- Note: Do NOT delete from system-level tables like servers, conferences, etc.
EOF

echo "Default data cleared. Ready for import."

Step 5: Import Data

#!/bin/bash
# import_data.sh - Run on NEW ViciBox server
IMPORT_DIR="/root/migration_import"
MYSQL_PASS="your_new_mysql_root_password"
DB="asterisk"

# Import order matters - reference tables first, then data tables
IMPORT_ORDER=(
    "vicidial_user_groups"
    "vicidial_users"
    "vicidial_statuses"
    "vicidial_campaigns"
    "vicidial_campaign_statuses"
    "vicidial_lists"
    "vicidial_list"
    "vicidial_server_carriers"
    "vicidial_inbound_groups"
    "vicidial_call_menu"
    "vicidial_inbound_dids"
    "vicidial_scripts"
    "vicidial_filters"
    "vicidial_lead_filters"
    "vicidial_remote_agents"
    "vicidial_phone_codes"
    "vicidial_dnc"
    "vicidial_campaign_dnc"
    "vicidial_callbacks"
    "vicidial_list_alt_phones"
    "vicidial_log"
    "vicidial_closer_log"
    "vicidial_did_log"
    "recording_log"
)

for TABLE in "${IMPORT_ORDER[@]}"; do
    if [ -f "${IMPORT_DIR}/${TABLE}.sql" ]; then
        echo "Importing ${TABLE}..."
        mysql -u root -p"${MYSQL_PASS}" ${DB} < ${IMPORT_DIR}/${TABLE}.sql
        if [ $? -eq 0 ]; then
            echo "  Success"
        else
            echo "  WARNING: Errors during import of ${TABLE}"
        fi
    else
        echo "  SKIP: ${IMPORT_DIR}/${TABLE}.sql not found"
    fi
done

echo "Import complete."

Step 6: Post-Import Adjustments

After importing data, several things need updating:

-- Update server_ip references to point to the new server
-- GoAutoDial had the old server's IP; VICIdial needs the new one
UPDATE vicidial_campaigns SET server_ip = 'NEW_SERVER_IP'
    WHERE server_ip = 'OLD_SERVER_IP';

UPDATE vicidial_server_carriers SET server_ip = 'NEW_SERVER_IP'
    WHERE server_ip = 'OLD_SERVER_IP';

UPDATE vicidial_servers SET server_ip = 'NEW_SERVER_IP'
    WHERE server_ip = 'OLD_SERVER_IP';

-- Update any recording_log entries to reflect new file paths
-- (only needed if recording directory structure changed)
UPDATE recording_log
SET location = REPLACE(location, '/old/path/', '/var/spool/asterisk/monitor/MIXmonitor/')
WHERE location LIKE '/old/path/%';

-- Reset conference extensions (they're server-specific)
-- The new ViciBox install already has these configured correctly
-- Don't import vicidial_conferences from the old server

-- Verify admin user still works
SELECT user, pass, full_name, user_level, active
FROM vicidial_users
WHERE user_level >= 8;

Step 7: Configure Carriers

Carriers (SIP trunks) need manual reconfiguration because they involve both database entries and Asterisk configuration files:

  1. Navigate to Admin > Carriers on the new ViciBox server
  2. For each carrier from your inventory document:
    • If the carrier was imported correctly, verify the settings match your documentation
    • Update the Server IP field to the new server’s IP
    • If using IP-based authentication, ensure your carrier has whitelisted the new server’s IP
    • If using registration-based authentication, verify credentials are correct
  3. Reload Asterisk: asterisk -rx "sip reload" or asterisk -rx "pjsip reload"
  4. Verify registration: asterisk -rx "sip show peers" or asterisk -rx "pjsip show endpoints"

For PJSIP configurations (recommended for new installs), you may need to convert old sip.conf carrier entries to pjsip.conf format. This is a one-time effort but important for forward compatibility with Asterisk 18.

Step 8: Test Everything

Before switching production traffic:

  • Admin login works (with your existing admin credentials, not just 6666)
  • Agent login works for at least 2-3 agents
  • Outbound test call connects with two-way audio
  • Inbound test call routes correctly to the right inbound group
  • Call recording creates files and recording_log entries
  • Lead data displays correctly on the agent screen
  • Callbacks fire at scheduled times
  • Reports generate correctly with historical data
  • DNC list is active (test by trying to dial a known DNC number)
  • Hopper fills correctly (screen -r VDhopper to watch)
  • All custom web forms and scripts load from the agent screen

Migration Without the Guesswork. ViciStack has migrated dozens of GoAutoDial operations to current VICIdial builds. We handle the data, the carriers, and the testing. Schedule Your Migration.


It is technically possible to update VICIdial underneath GoAutoDial without a fresh install. We do not recommend this for several reasons, but documenting it for completeness.

The Process

  1. SSH into your GoAutoDial server
  2. Navigate to the VICIdial installation directory
  3. Run svn update to pull the latest VICIdial code from the SVN repository
  4. Run the database upgrade scripts to update the schema
# This is what the process looks like (DO NOT run this blindly)
cd /usr/share/astguiclient/
svn update svn://svn.eflo.net:3690/agc_2-X/trunk
perl install.pl --run-db-upgrade

Why This Is Risky

  1. GoAutoDial’s PHP files may conflict with updated VICIdial code. GoAutoDial modifies some VICIdial PHP files. An SVN update will overwrite those modifications.
  2. CentOS 7 is end-of-life. Updating VICIdial does not fix the underlying OS problem. You are still running on an unpatched OS.
  3. Asterisk version mismatch. GoAutoDial CE 4.0 typically runs Asterisk 13 or 16. Current VICIdial SVN expects Asterisk 18. Updating VICIdial without updating Asterisk will break things.
  4. No clean rollback path. If the update breaks something, you cannot easily undo an SVN update + database schema change. You would need to restore from backup.
  5. You are still left with GoAutoDial’s GUI layer which serves no purpose if you are running current VICIdial.

If you absolutely cannot do a fresh install (e.g., you have 500,000 leads and cannot afford the downtime), the in-place path exists. But plan for 2-3x the troubleshooting time compared to a fresh install, and have a full backup you have tested restoring from.


Configuration Mapping: GoAutoDial GUI to VICIdial Admin

For administrators who learned VICIdial through GoAutoDial’s interface, here is where to find things in the native VICIdial admin.

Campaign Management

GoAutoDial PathVICIdial Admin Path
Telephony > Campaigns > Campaign ListAdmin > Campaigns
Campaign > General SettingsAdmin > Campaigns > [Campaign] > Detail
Campaign > Dial SettingsAdmin > Campaigns > [Campaign] > Detail (same page, scroll down)
Campaign > DispositionsAdmin > Campaigns > [Campaign] > Statuses
Campaign > Recycle RulesAdmin > Campaigns > [Campaign] > Lead Recycling
Campaign > Callback SettingsAdmin > Campaigns > [Campaign] > Detail > Scheduled Callbacks section
Campaign > Caller IDAdmin > Campaigns > [Campaign] > Detail > Outbound CID

List and Lead Management

GoAutoDial PathVICIdial Admin Path
Telephony > ListsAdmin > Lists
Lists > Upload LeadsAdmin > Lists > [List] > Load Leads
Lists > Lead ManagementAdmin > Lists > [List] > Leads (or direct SQL)
DNC ManagementAdmin > DNC
Lead FiltersAdmin > Filters

For a complete guide to list management in VICIdial, see VICIdial List Management Best Practices.

User and Agent Management

GoAutoDial PathVICIdial Admin Path
Users > User ListAdmin > Users
Users > User GroupsAdmin > User Groups
Users > Agent PhonesAdmin > Phones
User PermissionsAdmin > User Groups > [Group] > Permissions

Carrier and Trunk Configuration

GoAutoDial PathVICIdial Admin Path
Telephony > CarriersAdmin > Carriers
Telephony > DIDsAdmin > DIDs
DID RoutingAdmin > Inbound Groups + Admin > DIDs

Reports

GoAutoDial ReportVICIdial Admin Report
Agent PerformanceReports > Agent Performance Detail
Campaign SummaryReports > Campaign Summary
Call Detail RecordsReports > Outbound Calling Report (or CDR search)
Inbound ReportReports > Inbound Report
Recording SearchReports > Recording Lookup

The biggest difference: GoAutoDial’s reports had a visual dashboard with graphs. VICIdial’s built-in reports are table-based. If you need graphical reporting, integrate with Grafana (free) or a commercial BI tool. The underlying data is all accessible via MySQL queries.


Agent Transition: What Changes for Your Team

The most disruptive part of a GoAutoDial-to-VICIdial migration is not the technical work --- it is agent confusion. If your agents have only ever used GoAutoDial’s agent panel, the VICIdial agent screen looks different. Here is how to manage the transition.

What Looks Different

  • Layout: VICIdial’s agent screen uses a different layout than GoAutoDial’s agent panel. The call controls, disposition buttons, and script area are in different positions.
  • Styling: VICIdial’s default styling is more utilitarian. This is fixable with CSS customization.
  • Phone registration: If using softphones, agents may need to register to a new SIP server IP.

What Stays the Same

  • Core workflow: Login > Wait for call > Talk > Disposition > Repeat. This does not change.
  • Disposition codes: All your custom dispositions were imported with the data migration. Same codes, same meanings.
  • Callback scheduling: Same CALLBK/CBHOLD workflow.
  • Scripts: Agent scripts were imported and display the same content.
  • Transfer process: Same transfer workflow with blind and consultative options.

Training Approach

  1. Before migration day: Send agents a 1-page visual guide showing the VICIdial agent screen with annotations pointing out where familiar controls are located
  2. Migration day: Have a team lead or admin available on a video call to walk agents through their first login
  3. First hour: Run a practice campaign with test data so agents can click through dispositions, schedule callbacks, and transfer calls without affecting live leads
  4. First day: Monitor agent performance metrics closely. Expect a 10-20% productivity dip on day one as agents adjust. This recovers by day 2-3.

Customizing the VICIdial Agent Screen

If the default VICIdial agent screen is a problem for your team, customize it:

  1. CSS overrides: Add a custom CSS file to restyle the agent screen. Colors, fonts, button sizes, layout adjustments.
  2. Custom scripts with HTML/CSS: VICIdial’s script system supports full HTML. Use it to create a custom layout within the script panel.
  3. Custom web forms: The agent screen can load external web pages in an iframe. If you want a completely custom agent experience, build it as a web application that communicates with VICIdial via the agent API.

Rollback Plan

Every migration needs a rollback plan. Here is yours.

Before Migration

  1. Full backup of GoAutoDial server:
# Complete database dump
mysqldump -u root -p --all-databases > /root/goautodial_full_backup_$(date +%Y%m%d).sql

# Full system backup (if you have space)
tar czf /root/goautodial_server_backup.tar.gz \
    /etc/asterisk/ \
    /var/spool/asterisk/ \
    /usr/share/astguiclient/ \
    /var/www/html/ \
    /etc/crontab
  1. Do not decommission the GoAutoDial server until you have verified the new VICIdial server is stable for at least one full business week

  2. Keep the GoAutoDial server’s SIP registrations intact (just inactive). If you need to roll back, you can re-register with your carrier immediately

Rollback Procedure

If the new VICIdial server fails critically on migration day:

  1. Re-register your SIP trunks on the old GoAutoDial server: asterisk -rx "sip reload"
  2. If your carrier needs to re-whitelist the old server’s IP, call them immediately
  3. Point agents back to the GoAutoDial server URL
  4. Export any new leads or CDR from the VICIdial server that were created during the failed migration window
  5. Import those records into GoAutoDial to avoid data loss

The rollback window is practical for about 7 days after migration. After that, new data (leads, CDR, recordings, dispositions) accumulates on the VICIdial server and becomes increasingly difficult to merge back into GoAutoDial.


Post-Migration Optimization

Once you are running on current VICIdial, take advantage of the features GoAutoDial never had access to:

Immediate Wins

  • Predictive dialer optimization: Current VICIdial’s adaptive dialing algorithm is significantly improved over the 2019-era code in GoAutoDial. Retune your dial levels and abandon rate targets.
  • WebRTC with ViciPhone 3.0: Current VICIdial includes ViciPhone v3.0, a much more capable WebRTC softphone than what GoAutoDial offered. Remote agents can connect through the browser without external softphones.
  • Two-factor authentication: Secure your admin accounts with 2FA, a feature not available in GoAutoDial CE.
  • ConfBridge: Replace the legacy MeetMe conferencing engine with ConfBridge for better performance and no DAHDI dependency for conference rooms.

Settings to Review

After migration, walk through these settings that may have been configured for GoAutoDial’s defaults rather than optimal VICIdial values:


Frequently Asked Questions

How long does the migration take?

For a typical operation (1-5 campaigns, 10-50 agents, under 1 million leads), the technical migration takes 4-8 hours including data export, fresh install, data import, carrier configuration, and testing. The total project including planning, agent training, and stabilization is 1-2 weeks. ViciStack can complete the technical migration overnight for most operations.

Will I lose my historical CDR and reporting data?

No. The vicidial_log, vicidial_closer_log, and recording_log tables are all migrated. Your historical call data, recordings, and agent performance history will be available on the new VICIdial server. Reports will show the same historical data.

Can I migrate leads that are in active callback status?

Yes. The vicidial_callbacks table is included in the standard migration. All LIVE callbacks will continue to fire on the new server at their scheduled times. Verify this by checking SELECT * FROM vicidial_callbacks WHERE status = 'LIVE' after migration.

Do I need to re-train agents on VICIdial?

Minimally. The core agent workflow (login, take calls, disposition, callback) is functionally identical. The visual layout is different but navigable within a few calls. Plan for a 1-hour walkthrough and expect full productivity by day 2. The biggest adjustment is for managers who used GoAutoDial’s admin dashboard --- VICIdial’s admin interface has a steeper learning curve but is more powerful.

What about GoAutoDial Cloud --- is that different from GoAutoDial CE?

Yes. GoAutoDial Cloud is the company’s hosted SaaS offering. It may be running newer VICIdial code than CE 4.0, but you have no control over the underlying infrastructure, no SSH access, and limited customization. Migrating from GoAutoDial Cloud to self-hosted VICIdial requires requesting a data export from GoAutoDial (which they may or may not provide promptly) and then following the same import process described in this guide.

Can I run GoAutoDial’s GUI on top of current VICIdial?

Technically possible by installing the GoAutoDial PHP files on a current VICIdial server. Practically, this is a bad idea. GoAutoDial’s PHP code was written for PHP 5.x/7.x and VICIdial 2.14 schema circa 2019. Running it against a PHP 8.2 environment with VICIdial 2.14b0.5 schema 1729 will produce errors, broken pages, and potentially data corruption. The whole point of migration is to leave the GoAutoDial layer behind.

Is there a commercial migration tool?

No dedicated GoAutoDial-to-VICIdial migration tool exists because the data is fundamentally the same format --- it is all MySQL tables in the asterisk database. The migration is a standard MySQL export/import with some post-import cleanup. Tools like ViciStack’s migration service handle this as part of a managed deployment.

What if I have custom PHP modifications in GoAutoDial?

Document them before migration. If the customizations are in GoAutoDial-specific files (under /goautodial/), they will not carry over and you will need to reimplement them in VICIdial’s framework. If the customizations are in VICIdial’s core files (under /agc/ or /vicidial/), they may work on the new server but should be reviewed for compatibility with the current VICIdial codebase. Any customizations that reference GoAutoDial-specific database tables (go_* tables) will need rewriting.

Get Your Free 247-Point VICIdial Audit
Real-time support within 5 minutes. 24/7. Call or text 343-204-2353
← Previous Contact Center KPIs: The Complete Guide to Metrics That Matter Next → Open Source Call Center Software: The Complete Guide

Related Articles

VICIdial Optimization

The Complete VICIdial Setup Guide (2026): From Bare Metal to First Dial in Under 2 Hours

· 18 min read
Industry Analysis

The True Cost of Running VICIdial in 2026: A Realistic Breakdown

· 18 min read
VICIdial Optimization

VICIdial New Features: Everything You Need to Know

· 22 min read

Related VICIdial Settings

abandon_rate_target View setting → amd_type View setting → auto_dial_level View setting → available_only_ratio_tally View setting → campaign_recording View setting →

Related Status Codes

A — Answering Machine CALLBK — Callback Scheduled DNC — Do Not Call NEW — New Lead SALE — Sale

Related Glossary Terms

Abandon Rate Adaptive Dialing Agent Screen Answering Machine Detection (AMD) Automatic Number Identification (ANI) Asterisk Asterisk Manager Interface (AMI) Callback

See How VICIdial Compares

VICIdial vs. GoAutoDial Read comparison →

Comprehensive Guides

Complete VICIdial Implementation Guide Read guide → VICIdial Performance Optimization Guide Read guide →

Want These Results for Your Center?

Get a free performance audit from our VICIdial optimization experts. We'll identify the highest-impact changes for your specific setup.

System Down? Get Help in 5 Minutes
Real-time support within 5 minutes. 24/7. Call or text 343-204-2353