Many Android users need to move their WhatsApp conversations to a new phone but cannot—or do not want to—use Google Drive. Reasons range from limited internet access to privacy concerns. This tutorial shows how to create a local WhatsApp backup on the source device, pull it to a PC with ADB, and restore it on the target device, all without touching the cloud.
crypt12 vs crypt14) and the restore will fail.adb installed (Windows, macOS, or Linux).The workflow consists of four logical blocks:
msgstore.db.cryptXX file to the PC using ADB.Because the backup file is encrypted with a key that lives inside the app’s private data directory, the method works only when the backup and the restore happen on the same WhatsApp version and the same phone number. It does not require root access.
On each device, go to Settings > About phone and tap Build number seven times until you see the message “You are now a developer”. Then open Settings > System > Advanced > Developer options (the exact path can differ by manufacturer) and toggle USB debugging on. When you connect the phone to the PC for the first time, a dialog will ask you to allow USB debugging – tap Allow and, if offered, check “Always allow from this computer”.
Choose the method that matches your OS.
PATH environment variable.brew install android-platform-tools if you have Homebrew, or download the ZIP as above and add it to /usr/local/bin.sudo apt-get install android-tools-adb on Debian/Ubuntu.Verify the installation by opening a terminal and typing adb version. You should see something like Android Debug Bridge version 1.0.41.
Open WhatsApp on the source device and navigate to Settings > Chats > Chat backup. Turn off the Google Drive option (if it is on) and tap the blue BACK UP button. WhatsApp will create a file named msgstore.db.crypt12 (or crypt14 on newer versions) inside /sdcard/WhatsApp/Databases/. The process usually takes a few seconds to a minute depending on chat size.
What you should see: A toast notification saying “Backup completed”. You can also confirm the file exists by running:
adb -s <source‑device‑id> shell ls -l /sdcard/WhatsApp/Databases/
Replace <source‑device‑id> with the serial shown by adb devices. You should see a line ending with msgstore.db.crypt12.
First, connect the source phone to the computer via USB and ensure it is listed:
adb devices
You should see something like R9T1K2M3 device. Then pull the file:
adb -s R9T1K2M3 pull /sdcard/WhatsApp/Databases/msgstore.db.crypt12 ~/WhatsAppBackup/
The command copies the backup to a folder named WhatsAppBackup in your home directory. Verify the copy:
ls -l ~/WhatsAppBackup/msgstore.db.crypt12
On the target device, uninstall any existing WhatsApp installation (Settings > Apps > WhatsApp > Uninstall). Then, using a file manager or via ADB, delete the old WhatsApp folder to avoid conflicts:
adb -s <target‑device‑id> shell rm -rf /sdcard/WhatsApp
Now create a fresh folder structure where the backup will be placed:
adb -s <target‑device‑id> shell mkdir -p /sdcard/WhatsApp/Databases
Connect the target phone, verify it appears in adb devices, then push the file:
adb -s <target‑device‑id> push ~/WhatsAppBackup/msgstore.db.crypt12 /sdcard/WhatsApp/Databases/
After the command finishes, list the remote directory to confirm the file is present:
adb -s <target‑device‑id> shell ls -l /sdcard/WhatsApp/Databases/
Download the latest WhatsApp APK from the official site (or use the Play Store) and install it. During the first launch, WhatsApp will ask you to verify your phone number. Use the same number that was active on the source device.
After verification, WhatsApp scans the /sdcard/WhatsApp/Databases/ folder. If it finds msgstore.db.crypt12, a banner appears: “Backup found. Restore now?”. Tap RESTORE. The app will decrypt the file using the key that was generated on the source device; because the key is stored inside the app’s private data, the restore works as long as you are using the same WhatsApp version and the same phone number.
Expected result: A progress bar shows “Restoring messages…”. When it finishes, you will see your chat list exactly as it was on the old phone.
If you do not have a computer, you can use a local‑network file‑transfer app such as AirDroid or Send Anywhere. The steps are conceptually the same—create a local backup, copy the msgstore.db.cryptXX file to the target phone’s /sdcard/WhatsApp/Databases/ folder, then install WhatsApp and restore. The only difference is the transport method; the underlying WhatsApp requirements stay identical.
Settings > Chats > Chat backup the “Back up” button must finish without errors. Also check that the WhatsApp/Databases folder is not hidden by a file‑manager filter.adb shell ls -l. Re‑pull the file if they differ./sdcard/WhatsApp/Media/. If you need media, copy the entire WhatsApp folder (including Media) from the source to the target before installing the app.msgstore.db.cryptXX file contains all your messages in an encrypted form. While the encryption key is device‑specific, copying the file to a PC temporarily exposes it to anyone with access to that computer. Delete the file from the PC after the transfer.The procedure relies on the fact that WhatsApp can read a local backup created by the same app version on the same phone number. If you are moving to a brand‑new device that has never run WhatsApp before, the decryption key stored in /data/data/com.whatsapp/files/key is not present, and the restore will fail. In such cases you have two options:
By following the steps above you can move your WhatsApp chat history from one Android phone to another without ever uploading a single byte to the cloud. The method is fully offline, respects your privacy, and works with any Android version that supports ADB (Android 4.0+). Remember to keep the backup file secure, verify the WhatsApp versions match, and always back up the target device before overwriting its data.









