How can I download all my private messages from Facebook?

I don't really want to have to scroll through the actual messages, wait for older ones to load, and copy and paste since I have 7k+ messages so far.

I'm open to any solution.

8 Answers 8


To download your data, log into Facebook, then click the little arrow in the top right and select "Account Settings".

In the bottom left of your "General Account Settings" find the line of text that says "Download a copy of your Facebook data" and click the link.

enter image description here

  • 1
    Huh, interesting. When I first tried this in June, Facebook gave me only the 20-30 most recent messages in the archive, but now it gives me all of them. (it takes forever to archive everything, but oh well) Commented Nov 26, 2012 at 5:24
  • +1 This seems to be the only thing that really works. I'm still surprised there's no Facebook app for this, since the Facebook API seems to allow access to messages.
    – EM0
    Commented Oct 19, 2013 at 15:35
  • 6
    This will not give you all of the messages. If you message someone every day all the time, you'll have a lot of messages in between the two of you. However, Facebook data download will only go back so far. It's inconsistent and fairly broken. Commented May 6, 2016 at 21:47
  • 1
    It's not working for me neither. I have around 18000 messages to download. Not sure how many I'm getting using this method.
    – hectorpal
    Commented Jun 9, 2016 at 20:19
  • Seems the limit is now 10000 per thread. (Weirdly, it's possible to have multiple threads with the same person. Not sure why that is.)
    – tjvr
    Commented Oct 2, 2017 at 23:45

To start, use a computer and open the Google Chrome browser. If you don’t have Google Chrome, then download it. Then use the Google Chrome browser to go to http://m.facebook.com/messages/

Then click the person you want to see the first message with.

Now press Ctrl+Shift+J and then paste this code into the lower window that pops up, and then press Enter. It will then proceed to load old messages until it reaches the very first message. Here is the code:

setInterval(function () {
}, 500); 

The above code can also be found on this website: http://jsfiddle.net/magicramki/k9gda3cu/

If you do not want to go back all the way, you will need to stop the script. In order to do that, you will first need to define it as a variable:

var myVar=setInterval(function () {
}, 500); 

Then to stop it, you will simply need to enter the following command:


You can resume the script anytime by typing the first part again.

Now once it loads everything, you have two options. You can right click anywhere on the page and choose "save as" and then save that file somewhere on your computer. Then use Google Chrome to open it when you want to view it later (won't look right in Internet Explorer). This will save the entire chat, complete with pictures and emoticons. When you want to search for a particular day, press Ctrl+F to bring up the find box. Then type in "Mar 2", for example, to bring up the conversation on March 2nd.

The second option is to highlight the parts that you want to save, and then copy by pressing Ctrl+C. Then open Microsoft Word and paste that into the document by pressing Ctrl+V. Now save that file. This will save the text and pictures, but not the emoticons.

  • I confirm this one as the only answer that a) still works as of August 2016 and b) really does what was asked in the question. This method yields the best result of all mentioned here: downloads messagges, pictures and GIFs, and keeps the original appearance. It still does not save videos (couldn't test with other files though) and only saves low-res versions of the images. A more sophisticated tool that really saves everything, including high-res images, would be great to be provided, officially or unofficially... couldn't find anything yet though.
    – Neinstein
    Commented Aug 7, 2016 at 23:00
  • A year later, it fails with the following error:Uncaught TypeError: Cannot read property 'getElementsByClassName' of null \n at <anonymous>:3:1. The name of the element used in your code appears to have changed. I lack competence to find it, could you please update your code?
    – Neinstein
    Commented Sep 8, 2017 at 16:54
  • It is working in October 2018 too. Commented Oct 15, 2018 at 22:31
  • Note that what the script does it to click the "see older messages" for you. Still works on Fri, Jun 21, 2019 I'm waiting for it to load all
    – Gellie Ann
    Commented Jun 21, 2019 at 5:22
  • For those who can't use the code and who have fewer messages per person, go to m.facebook.com/messages (in Chrome) > right-click on the person > Open link in new tab. In that tab, click on See Older Messages (in upper left corner) until you've arrived at the start. Then use a full webpage capture extension (e.g., Fireshot) to capture the entire conversation with that person. This captures most inserted images and original formatting. Commented Jan 3, 2020 at 4:16

You can try going to http://m.facebook.com/ and click on "Messages".

Select a person to view the history, and click on "See Older Messages" once.

Notice that &start= part in the URL, that's the number of received and sent messages minus 7.

Notice the &page_size=7 part in the URL. Currently, Facebook does not limit this number, you can set that to a number bigger than the start value. This makes it disable pagination and displays all the messages it found, except the skipped 7. (If the number's smaller, somehow Facebook will display only 7).

** To make it work on Chrome, left click on "See Older Messages" and choose "open in a new tab" and there you will find the "page_size=" number to change. (May 2013)

  • Interestingly, this appears to work only in Firefox and IE, but not Chrome. I'm not really sure why. Commented Sep 3, 2012 at 6:30
  • Doesn't work for me in Firefox, either. Chrome just doesn't show start and page_size URL parameters - the URL is completely different. Firefox shows them, but changing page_size seems to have no effect - I still see only a few messages at a time.
    – EM0
    Commented Oct 19, 2013 at 15:27
  • this works, this is great to get to the start of the conversation. But you have to go through each pages to get the whole thing. Commented Dec 15, 2013 at 13:52
  • 2
    I confirm that now the page_size parameter is no longer present for all three browsers (Firefox, IE and Chrome)
    – 5agado
    Commented Jun 16, 2015 at 15:58
  • No this does not work any more
    – scs
    Commented Feb 8, 2021 at 19:36

I use a tool called SocialSafe that backs up all of (well, pretty much all of) my Facebook content, and that now includes messages. I can search through them all, and also jump see in the little diary part of it all of the different things that I've done on Facebook over the years.

  • But does it allow you to save them to a file on your disk? If so, in what format? Are emoticons, links, etc. included?
    – EM0
    Commented Oct 19, 2013 at 15:27
  • The application doesn't allow anymore to create a backup of inbox messages, as reported here
    – 5agado
    Commented Jun 16, 2015 at 16:01
  • As reported at socialsafe.net the work has been merged into digi.me
    – Ben Creasy
    Commented Mar 19, 2018 at 20:15

Download a copy of your Facebook data: click the little arrow in the top right and select "Account Settings". Then find the line of text that says "Download a copy of your Facebook data" and click the link.

I wrote a handy python script called mesExtractor that help you extract any conversation in your Facebook data. Using this script, I'm able to extract 60k+ messages in one conversation of my Facebook data. See the demo from github here:


  • 1
    Do you have a particular release license for this? I've made a number of modifications and I'd like to post it publicly to my github. I'll probably put it under the MIT license for free use (and credit you, of course). Let me know if you would prefer that I not.
    – Matter Cat
    Commented Feb 19, 2017 at 1:18
  • Just feel free to use it :) I just make it for fun :)
    – GiapLv
    Commented Feb 20, 2017 at 13:10

If you use Chrome, I have an extension just for this purpose.

Here is the link Messages Saver for Facebook.

I didn't try the really big chats, but what I have (up to 15,000 messages) it saves. You can also save in parts.

You can choose whether to save your chat as just text, an html file with all smileys, emojis, pictures and other files embedded, or as a zip file, then all the files will be saved locally to your computer.


There is an add-on for Firefox which downloads your facebook inbox and saves it in txt files. Take a look here: https://addons.mozilla.org/en-US/firefox/addon/red1/ or here: http://www.facebook.com/Red1MessageArchiver


Just go to your browsers menu and click "save as" while you're on the page with the messages. Make sure all the messages are showing by clicking to load them each time, until you have scrolled back to the beginning. This will save the entire web page, including your pictures and you will be able to scroll through the message exactly like the original on Facebook. Hope this helps!

  • Unfortunately, when you have over 100k messages from one person, this solution doesn't scale. I'd have to sit in front of my computer for days if I want to get to the very start for just one person. Commented Mar 10, 2014 at 2:00

Not the answer you're looking for? Browse other questions tagged or ask your own question.