How to fix inexplicably undelivered/pending/blocked Skype messages

Sometimes, in an instant messaging conversation on Skype, messages are marked as "pending"[1] for no apparent reason: neither chat partner has blocked the other, and both are online. Sometimes, the messages remain blocked - inexplicably - for hours or even days.

Whilst only the Skype developers can provide a permanent solution to this problem, this page attempts to offer potential workarounds. Unfortunately, it does not provide a perfectly simple, reliable, universal, and risk-free workaround, although the first one comes close.

Contents

First up: check that the problem is not a server outage

Along with the problem described in this article, another reason why Skype messages might fail to send is that there is an outage on Skype's servers: these days, Skype clients send messages through central servers rather than directly to one another (peer-to-peer), so a problem with a server can block communication between clients. In that case, the workarounds on this page will be futile, and all you can do is wait until the Skype technicians solve the problem. You can check the Skype Status page, amongst others, to find out whether there's an outage affecting you.

Another possibility: your contact is offline

Another possibility is that your contact is actually offline, even though s/he is showing up as online: sometimes, Skype doesn't "realise" that someone in your contacts list has gone offline. To test this: restart Skype, and if your contact is now showing up as offline, then that was the problem: messages are not marked as delivered until both of you are online simultaneously (at least, this was the case when I first wrote this article back in 2014 - the situation may be different now that Skype stores messages on its servers).

Skype Community threads attesting to this problem

This selection of threads about this problem on the Skype forums - both pre- and post-Microsoft's acquisition of Skype - seems to demonstrate that (1) it has been ongoing for many years, and as of March 2018 has still not been solved, and (2) it occurs under Windows, Mac OS X, iOS and Android (to which we can add Linux, on which I have experienced the problem[2]), and thus that the presumed bug causing it is platform-independent, and so is probably a part of the core Skype code. Bear in mind that these are only a representative selection of threads - there are others out there.

Potential workaround #1: Send a message from a second chat window

In short, this workaround is to create a second chat with the contact(s) to whom your messages are being blocked, and to send another message from that new window (I usually type something like "Unblocking our other window..."). In every case bar one in which I have tried this, the blocked messages in the original chat have unblocked themselves within about five-fifteen seconds. Once they are unblocked, it is then safe to close the second chat and return to the now-unblocked first chat.

Because Skype does not make it possible to create two individual chats to the same contact, if the chat in which messages are blocked is one-on-one and not a group chat, then you need to create a group chat in order to get up a second chat involving your blocked-message contact. This requires you to "shanghai" (potentially with prior warning) a third contact into the new group chat. I am not 100% sure, but I suspect that this third contact needs to be online for this solution to work.

Originally, at least under Skype-for-Linux, it was possible to avoid shanghaiing a real person, because chats - including group chats - could be created with the "Skype Test Call" contact (username "echo123"), which is an always-online bot. Sadly, this is no longer possible, however, if you have access to more than one Skype instance, then you can achieve the same thing by creating a dummy account - which you can bring online as needed or for convenience leave online permanently - simply for the purpose of adding to group chats to unblock existing chats without bothering/shanghaiing third parties - you will of course have to first add it to your real Skype account's contacts.

Potential workaround #2: Delete your Skype personal data directory

Sometimes, deleting your Skype personal data directory solves this problem, at least under Mac OS X and Windows. Potentially, it works on Linux too - please let me know if you have success with it there, as well as the specific steps that you took.

Unfortunately, it does not always work, and can instead make things worse - for example, Jamurai reports on the Skype forums [web.archive.org copy] that it resulted in the messaging box of a 30-person group chat being greyed out with the note "Messaging unavailable", and the thirty participants reduced to a single person, the most recently added, who was then listed as "facebook:[username], ...".

Be cautious, then, when attempting this workaround. Another reason to be cautious is that, as far as I know, Skype did not start storing all chat messages on its central server until a few years ago, and I am not sure in any case that it stores chat histories indefinitely, so if you want to be sure not to lose any of your chat history, then take a backup of this folder before you delete it.

If, after those warnings, you want to give this potential solution a try, then here are some detailed instructions for Mac OS X and Windows.

The following instructions are based on a Skype forums post [web.archive.org copy].

Under Mac OS X:

  1. Close Skype.
  2. Delete the directory /Users/[your-username]/Library/Application Support/Skype, where "[your-username]" should be replaced with your actual username. This can be achieved through Terminal by using the command "rm -rf '/Users/[your-username]/Library/Application Support/Skype'", again, after replacement of "[your-username]".
  3. Restart Skype.

The following instructions are based on email advice from a reader.

Under Windows:

  1. Close Skype.
  2. Delete the folder C:\Users\[your-username]\AppData\Roaming\Skype, where "C:" should be replaced with your primary disk drive if that is not C:, and where, as for Mac OS X, "[your-username]" should be replaced with your actual username. A quick way to accomplish this is to enter %appdata% into Windows Search, which will bring up a "Roaming" folder: click on that "Roaming" folder, which will open it in Windows Explorer, showing within it the Skype folder, which you can then delete. Note that there is a similar folder, C:\Users\[your-username]\AppData\Local\Skype (i.e., where "Roaming" is replaced with "Local"), which does not need to be deleted.
  3. Restart Skype.

All going well, on restarting Skype, local chat histories can then be restored from the Skype server(s) by clicking on a chat and scrolling up. Per the above warning, it might be that not all of the chat history is available from the Skype server.

Potential workaround #3: Tether to your smartphone

A reader wrote to me to report success on three different machines using the following randomly-discovered workaround, which might be worth a try:

  1. Tether the device on which Skype is running to a smartphone to give it internet access through the smartphone. Once the device connects via its tether, Skype will start sending messages.
  2. Now, send a Skype message from that device while it is still tethered. Disconnect the smartphone as soon as the message goes through.
  3. Reconnect the machine to its usual internet connection and send a message.

Why would this work? I am not sure, but possibly something gets reset due to the change of network provider and/or IP address - if so, it might not be necessary to specifically tether to a phone, but more generally to simply reconnect to the internet if your IP is dynamically assigned, or to connect to a different network, for example by borrowing a USB mobile internet dongle, or, if you are using a laptop, by connecting via a (different) public wifi hotspot.

Potential workaround #4: Use Skype for Web

You might also be able to avoid this problem by switching to Skype for Web.

Potential workaround #5: Update your Skype profile

In a reply on the Skype forums, one user reported resolution of a pending message problem simply by updating his/her Skype profile - this, too, might be worth a try.

Changelog (most recent first)

Footnotes