Disqus is a third-party commenting system that can be incorporate in your website by using javascript, and could reduce a lot of moderation pressure. Before writing this post, I have used Disqus for months, but now I am switching to my own commenting system, mainly because Disqus is negatively affecting the loading time of my own website, but also because I have concern about users’ privacy. If you generate dynamically your website content, I recommend you avoid the use of Disqus on your website. If you are thinking why, keep reading.

Avoid Disqus to speed up your website and protect your users

1. You do not have full control over external resources.

I love speedy websites, so I always want to be able to minify and set cache on all resources that my website send to your browser. I can tweak with every resource that I own, I can make it smaller and faster, but I cannot do anything with external resources.

Impact of Disqus on PageSpeed score

Most of third-parties service offer external resources without being fully minified and often have a short expiration time. You cannot tweak those external resources without hosting a copy on your own site, which could break their terms of conditions, and could break their service when those third-parties update their API or javascript source code.

Firefox offer Private Browsing with Tracking Protection which block Disqus javascript by default, and some people use Disconnect, Ghostery, or by editing their own hosts file to block third-parties tracking, leading to disabling this commenting system for all. This could not happen if you use your own commenting system.

2. Most websites require javascript to display comments.

Some websites fetch and display comments using Disqus API, but most websites do not. Most websites only relied on Disqus recommended javascript snippet to display it. This is bad for people who use NoScript plugin, is bad for people who use browser that do not have javascript support, is bad for people who have javascript disabled, and is bad for people who use screen readers. By using Disqus, you are creating a barrier where you can potentially lose great and contributive comments. For those websites that fetch comments, most of those have broken their website design by displaying unstyled comments.

This point may also be bad in term of SEO. Google can process some javascript, but some other search engines do not have ability to run it, resulting comments unindexed, therefore losing the positive effects of comments for SEO.

In addition, if there have some delay on displaying the comments, your users may confuse and leaving your site by thinking that your blog does not allow comments.

3. Disqus javascript blocks your browser.

Did you notice sometimes when you are browsing a website, suddenly it stop responding for seconds and then returns normal? Maybe no, but it could be very notorious for someone who use a slow computer to surf internet. This is because those websites load some javascript that block your browser.

All modern browsers support asynchronous javascript, but Disqus default recommended javascript snippet does not load this way, this might slow down you website and it could also negatively affect the experience of your users.

4. Disqus is a memory hog.

Switching from Disqus to my own commenting system, I reduced the memory consumption on Google Chrome from ~62 MB per page to less than 20 MB per page, making it more memory efficient, which is great for users who use computer with low RAM (and I hope this could slow down the climate change).

5. Disqus is tracking you.

Disqus have disabled guest comments by default and allows website owners to enable it. However, although website owners enable guest comments, is still not obvious for most people about how to post a guest comment. The user need to check a box and then, it requires your name and email address. These fields are not optional, what mean you cannot just leave those text fields empty. That is how Disqus could collect your personally identifiable information. You can choose to use a fake name and a fake email address to post something, but this is not so obvious for all people.

As Disqus expressed in their privacy policy, to continue use their service, you allow Disqus to track your interaction within the website and across websites by using persistent cookies and web beacons. There is not an easy way to opt-out these tracking without editing configurations files or by installing privacy protection plugin to block Disqus for all.

6. Lack of extensibility.

As you do not own Disqus code, you are limited to options that Disqus offers. If you want to add a feature, or install a custom plugin, you are out of luck. Disqus offers you to limited options to customize their appearance (right now it only let you choose between light and dark background color scheme, and between serif and sans-serif typeface) and you cannot submit custom styles files to match perfectly your website style.

7. Disqus could show additional ads.

Most people hate ads. Disqus allows website owners to earn extra money by enabling “Reveal”, which shows sponsored stories in your comments section. That is not all, Disqus could also shows sponsored comments without permission and there is not easy way for an individual to opt-out without reaching out their support team.

There are clearly problems about performance, privacy and unwanted ads, so what I did is create my own commenting system.

Features of my commenting system

  1. The comments are displayed statically without javascript. This mean that any visitors could read comments without javascript (which is also SEO friendly).
  2. It use local asynchronous javascript to append the comment form, where I have full control over the script. The javascript is minified and expire in a year, so you are not going to need to download so often, which imply faster website loading time, and I do not need to spend bandwidth to serve so often, so it is a win-win for us. My script do not block your browser because it is loaded asynchronically, and it has very small memory footprint.
    A advantage to append the comment form by using javascript is to avoid spam bots, but it also have some drawback, like avoiding those visitors who use NoScript or who have javascript disabled to comment. I am willing to take this cost.
  3. I made the name field optional and I deleted email address field. This is good for your privacy since you can comment in my blog as anonymous, and I promised about not recording any of your browser data, so, welcome to comment anonymously.
  4. It allow markdown for typing comment. I disabled heading and HTML tag for security reason, but it allow all others features of markdown like image inclusion.

Since I do not ask for login and email address, my commenting system do not display any profile pictures. This is another drawback that I need to accept. It still lacks some features, like mentions and emoji, but I can tweak it with time, since it is my own system.

What can you do now?

Not everyone can create its own commenting system. If your website is static, choose Disqus because you do not have many choose. Nevertheless, if you use Wordpress or others blogging platform, please disable Disqus and use incorporated commenting system or install some self-hosted commenting system like Discourse (actually it is a flat forum, but could also be a great commenting system). Wordpress also have many extensions to enhance their own commenting system.

Have you any thought about this? Please feel free to add a comment!