iMessages not delivering on iOS & macOS – Try these Fixes

iMessages will not deliver primarily due to network problems. Try resetting the network settings of your device as it will refresh the device’s network modules. The messages also don’t get delivered if the recipient has blocked you from sending messages or if their device is not an Apple device. iMessages only work between iPad, iPhones, and Macs.

iMessages not Delivering
iMessages not Delivering Fix

An easy way to find out about the recipient’s device is to actually send them a message. If it’s an Apple device the message bubble will be blue and if it’s not, then the message will be green. The text field will also have the text whether it is an iMessage or if it is a Text message

IssueiMessages not getting delivered
Reported onAll Apple devices
Caused byIncorrect iMessaage settings

iCloud not functioning properly
SolutionsRelogging into iMessages

Force restarting messaging modules

1. Force Restart your Apple Device and the Router

iMessages will not get delivered if the network modules of your devices are in an error state or the router’s temporary data is invalid. Here, restarting your devices and the router will solve the problem.

Cold Restart

  1. Power off your Apple device and networking equipment.
  2. Unplug their power cables and wait for a minute.
    Unplug Your Router from the Power Source
    Unplug Your Router from the Power Source
  3. Connect back the power cables and power on both devices. Check if iMessages are delivering successfully.

Force Restart

If normal restarting did not work, force restarting the Apple device will do the trick. 

  1. On the iMessage screen, successively tap on the volume up and volume down button.
    Force Restart the iPhone
    Force Restart the iPhone
  2. Then press and hold the side button of your iPhone for about 10 seconds.
  3. Wait till the Apple logo is shown on the screen and release the button.
  4. Launch iMessage and check if messages are getting delivered.

If that did not work but the issue is occurring on the messages with attachments (like a picture), check if moving that attachment to the internal drive of your Mac solves the problem.

2. Change the Time Settings of your Apple Device

If the date, time, or time-zone settings of your Apple device are incorrect, iMessage will fail to deliver. The servers will reject data packets as they will have incorrect timestamps. To resolve this issue, adjust these settings on your device to the correct time according to your location. Here are the steps to do so on a Mac:

  1. Navigate to System Settings > General > Date & Time.
    Open Date & Time in Mac’s System Settings
  2. Make sure the date, time, and time zone settings are correct. Make changes if necessary and restart your device. 
  3. You can also enable the option of Set Date and Time Automatically. This will automatically set the correct date & time settings of your device.
    Uncheck Set Date and Time Automatically in Mac’s Date & Time Setting

3. Toggle “Text Forwarding” in the iMessage Settings

Text Message Forwarding allows you to send and receive messages from other devices that are signed in with the same iMessage account. However, if the modules responsible for Text Message Forwarding are encountering errors, the synchronization of messages between devices will fail, resulting in the issue.

To address this, disable and enable the Text Message Forwarding option. This will refresh the relevant modules. Here are the steps to do so on an iPhone:

  1. Navigate to Settings > Messages > Text Message Forwarding.
  2. Enable the option and Force restart your iPhone. After the restart, check if iMessages are working properly.
    Open Text Message Forwarding in the Messages Settings of the iPhone
    Open Text Message Forwarding in the Messages Settings of the iPhone
  3. If the option was already enabled, check if disabling it solves the problem.
  4. If the issue still persists, enable Text Forwarding and make sure Send and Receive in the previous screen have both of your details properly configured (Apple ID and phone number). 
    Open Send & Receive in the iPhone's iMessage Settings
    Open Send & Receive in the iPhone’s iMessage Settings
  5. If none of the above options work, navigate to Text Message Forwarding section and deselect all other old devices. Only select the problematic device only.
    Select Only the Problematic Device in the iMessage Text Message Forwarding Settings
    Select Only the Problematic Device in the iMessage Text Message Forwarding Settings
  6. Restart your device and see if the issue is resolved.

4. Boot the Apple Device in Safe Mode

When an Apple device is booted in its safe mode, the device cache is reset and disks are repaired. Also, third-party apps are not allowed to operate which help diagnose if the problem is due to a third-party application.

Here, booting the Apple device in its Safe Mode can help point us to a potential third-party culprit. For illustration, we will discuss the process of booting an Intel-based Mac into Safe Mode.

  1. Power off your Mac and then press its power button.
  2. Immediately hold the Shift key until the login screen is shown.
    Hold the Shift Key While Powering On the Mac to Boot it into the Safe Mode
    Hold the Shift Key While Powering On the Mac to Boot it into the Safe Mode
  3. Release the Shift key and log in.
  4. Launch iMessage and verify if messages are delivered. 
  5. If so, boot Mac into the normal mode and see if iMessages are working properly.
  6. If not, check if any third-party apps or start-up items are causing the problem.

5. Reset Mac’s NVRAM or PRAM to the Defaults (Mac Only)

The PRAM or NVRAM of a Mac contains important OS settings such as the startup disk selection, sound volume, and time zone. If this component becomes corrupted, a module essential for iMessage might fail to execute and cause the issue. This can be fixed by resetting the Mac’s NVRAM or PRAM to its default settings.

  1. Power off the Mac and hold the following four keys at once:
    Reset PRAM or NVRAM of the Mac
    Reset PRAM or NVRAM of the Mac
  2. Wait for 20 seconds and release the held keys. Your Mac may restart during the process.
  3. Power on the Mac (if did not start automatically) and determine if iMessages are working.

6. Re-Enable iMessage in the Apple Device Settings

If the syncing mechanism iMessages is not functioning correctly, it can cause issues. We can remedy this by disabling and enabling iMessage on the Apple device. This will reinitialize all modules in the storage. Please wait around 10 minutes after signing out to enable the successful cleaning of old records. 

  1. Open iMessage on the Mac.
  2. Navigate to Messages > Preferences > iMessage.
    Opening iMessages preferences
  3. Click on Sign-out in front of your Apple ID and restart your Mac. Wait for 10 minutes before proceeding. 
    Signing out of your Apple ID in iMessages
  4. Enable iMessage and sign in using your Apple ID (same as on your iPhone).
  5. Launch iMessage and check if messages are getting delivered.
  6. If not, sign out and disable iMessage on all of your Apple devices.
  7. Restart all the devices and log in again to all of them. 
  8. If the issue persists and one of your devices cannot upgrade to the latest OS (like a Mac that cannot be updated to High Sierra), check if logging out of that particular device clears the issue.

7. Re-Enable iCloud Sync in the iMessage Settings

iCloud sync in iMessage is used to sync messages between your devices and Apple servers. If the iCloud sync isn’t functioning properly, it will affect the delivery of messages. To address this, disable and enable the iCloud sync in the iMessage settings. This will refresh the relevant iCloud modules responsible for iMessage communications.

  1. Launch the Messages app on your Mac.
  2. Navigate to Messages > Preferences > iMessage.
    Opening iMessages preferences
  3. Uncheck Enable Messages in iCloud and restart the Apple devices. Check that iMessages are getting delivered.
    Enabling ‘Enabled messages in iCloud’
  4. If not, checkmark Enable Messages in iCloud and see if the problem is solved.

8. Resetting Network Settings to Defaults

To perform its operations, iMessage relies on an Internet connection, which can be established through mobile data or Wi-Fi. However, if the network settings on your Apple device are invalid or contain outdated configurations, iMessage will be unable to access the Internet, leading to delivery issues.

In such a scenario, resetting the network settings of your device will solve the problem. Make sure to note down any network info (like credentials of your Wi-Fi network) that may be required later.

  1. Navigate to Settings > General > Reset.
  2. Reset the Network Settings of the phone and restart it.
    Open Reset in General Settings of Your iPhone
    Open Reset in General Settings of Your iPhone
  3. Connect the iPhone to a Wi-Fi network and see if iMessages are getting delivered.
    Tap on Reset Network Settings in iPhone
    Tap on Reset Network Settings on iPhone

If that did not work and you have an E-SIM, check if swapping the E-SIM with a physical SIM solves the problem.

9. Try Another Network

iMessage relies on Internet access to complete its operations. If your Internet Service Provider (ISP), such as a corporate or school Wi-Fi, is preventing iMessage from accessing the Internet, delivery issues will arise. This can be confirmed by trying another network.

  1. If you’re experiencing the problem on a mobile device, try switching to cellular data or Wi-Fi, whichever you’re not currently using. See if it resolves the issue.
  2. If not, disconnect your device from the current Wi-Fi network and connect to another network. If no other network is available, you may use a hotspot from another phone but on a different carrier. 
    Enable Hotspot on the iPhone
    Enable Hotspot on the iPhone

10. Edit the Contact’s Country Code

If your contacts are not in the correct international format, iMessage will fail to deliver your message to the intended number. To address this, edit the contact and add the country code associated with the contact.

This problem is typically resolved automatically by the device but there may be situations where manual intervention is required.

  1. Launch Contacts on the problematic Apple device (like a Mac) and open a problematic contact.
  2. Make sure its number is in proper international format e.g., if a number is like 01234567890, then change it to +11234567890 where 0 is replaced with the country code +1.
    Edit the Contact's Number and Add Country Code to it
    Edit the Contact’s Number and Add Country Code to it
  3. Save the changes and check if iMessages are successfully being sent and received.
  4. If not, delete the contact and wait till the contact is also removed from the iCloud. Make sure to note down the contact details as you will require them later.
  5. Restart your device and create a new contact with the proper international format. Check if iMessages are working for that contact.
  6. If that did not work, open Contacts and delete any reference to your name or number (including My Card).
  7. Restart your Apple device and add back your number to Contacts with the proper international format.
  8. Launch iMessage and check if it is functioning normally.

If that resolves the issue with a contact but occurs with other contacts as well, you may have to edit all the contacts to be in the international format. You may try an app for that purpose.

11. Reset the Device’s Settings to the Defaults

Delivery issues in iMessage will result from device settings that are misconfigured. This is a common occurrence after an OS update as settings are changed to incorporate newer OS modules. This can be fixed by resetting the device settings to their defaults.

Before doing so, be sure to back up any important data or information that you may need later.

  1. Navigate to Settings > General > Reset.
  2. Reset All the Settings and restart the phone. Verify if the issue is cleared.
    Reset All Settings on Your iPhone
    Reset All Settings on Your iPhone

12. Create a New User Account (Mac Only)

iMessage on a Mac will not work if the messaging modules of the OS in your profile are corrupt. As a result, the execution of essential iMessage modules will fail. Here, creating a new user profile on the Mac will do the trick.

Before doing so, be sure to back up any essential data in the current user account, such as conversations or the Home folder. Failure to do so may result in data loss.

  1. Navigate to System Settings > Users & Groups.
  2. Click on Add Account and set the account type to Administrator.
  3. Fill out other details and click on Create User.
    Create a New Administrator User on a Mac
    Create a New Administrator User on a Mac
  4. Log out of the current user and log into the new Mac user account.
  5. Launch iMessage and log in using your Apple ID. See if the issue is resolved. If so, then you may move the old account data to the newly created account.

13. Reset the Apple Device to the Factory Defaults

When the messaging modules on your device are unable to function properly due to corruption in the operating system, iMessage will encounter delivery problems. Here, resetting your Apple device to the factory defaults will solve the problem.

Factory resetting the iPhone will remove all the content from your device. Before resetting, make sure to back up your data first and charge the battery fully if you’re using a mobile device.
  1. Navigate to Settings > General > Reset.
  2. Tap on Erase All Content and Settings and confirm to reset the iPhone. 
    Reset iPhone to the Factory Defaults
    Reset iPhone to the Factory Defaults
  3. Once done, set up the iPhone as a new device (not restored through a backup).
  4. Launch iMessage and hopefully, it will be working properly.

If none of the above resolves your issue, then you can contact Apple support to help with your problem. Till then, you may use iMessage on another device.

ABOUT THE AUTHOR

Ammar Nawaz


Ammar is a professional graphic designer, video editor, and windows enthusiast mainly; his expertise is in adobe premiere pro, adobe after effects, adobe Photoshop, adobe illustrator, HTML, CSS and Javascript