diff --git a/README.md b/README.md
index ccc6f46..3ba7a8f 100644
--- a/README.md
+++ b/README.md
@@ -2,13 +2,14 @@
 
 > Highly performant, light ~0.5kb and configurable lazy loader in pure JS with no dependencies for images, iframes and more, using IntersectionObserver API
 
-![lozad.js lazy loading javascript library](./banner/lozad-banner.png "lozad.js lazy loading javascript library")
+![lozad.js lazy loading javascript library](./banner/lozad-banner.jpg "lozad.js lazy loading javascript library")
 
 **Lozad.js**:
 - lazy loads elements performantly using pure JavaScript,
 - is a light-weight library, *just **535 bytes*** minified & gzipped,
 - has NO DEPENDENCIES :)
-- allows lazy loading of dynamically added elements as well.
+- allows lazy loading of dynamically added elements as well,
+- supports responsive images
 
 It is written with an aim to lazy load images, iframes, ads, videos or any other element using the recently added [Intersection Observer API](https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API) with tremendous performance benefits.
 
@@ -111,6 +112,13 @@ observer.observe();
 // ... code to dynamically add elements
 observer.observe(); // observes newly added elements as well
 ```
+
+for use with responsive images
+
+```html
+<!-- responsive image example -->
+<img class="lozad" data-src="image.png" data-srcset="image.png 1000w, image-2x.png 2000w" />
+```
 ## Browser Support
 
 Available in [latest browsers](http://caniuse.com/#feat=intersectionobserver). If browser support is not available, then make use of this [polyfill](https://www.npmjs.com/package/intersection-observer).
diff --git a/banner/lozad-banner.jpg b/banner/lozad-banner.jpg
new file mode 100644
index 0000000..2698760
Binary files /dev/null and b/banner/lozad-banner.jpg differ
diff --git a/banner/lozad-banner.png b/banner/lozad-banner.png
deleted file mode 100644
index 50d201c..0000000
Binary files a/banner/lozad-banner.png and /dev/null differ
diff --git a/demo/images/lozad.jpg b/demo/images/lozad.jpg
new file mode 100644
index 0000000..2bb0485
Binary files /dev/null and b/demo/images/lozad.jpg differ
diff --git a/demo/images/lozad.png b/demo/images/lozad.png
deleted file mode 100644
index c1bf52c..0000000
Binary files a/demo/images/lozad.png and /dev/null differ
diff --git a/demo/images/thumbs/01.jpg b/demo/images/thumbs/01.jpg
index 2d76f90..6816fd0 100644
Binary files a/demo/images/thumbs/01.jpg and b/demo/images/thumbs/01.jpg differ
diff --git a/demo/images/thumbs/02.jpg b/demo/images/thumbs/02.jpg
index ca2293b..cdb4ae4 100644
Binary files a/demo/images/thumbs/02.jpg and b/demo/images/thumbs/02.jpg differ
diff --git a/demo/images/thumbs/03.jpg b/demo/images/thumbs/03.jpg
index 49adcbb..38f29cb 100644
Binary files a/demo/images/thumbs/03.jpg and b/demo/images/thumbs/03.jpg differ
diff --git a/demo/images/thumbs/04.jpg b/demo/images/thumbs/04.jpg
index 2709ced..41df783 100644
Binary files a/demo/images/thumbs/04.jpg and b/demo/images/thumbs/04.jpg differ
diff --git a/demo/images/thumbs/05.jpg b/demo/images/thumbs/05.jpg
index f60dbda..f930cab 100644
Binary files a/demo/images/thumbs/05.jpg and b/demo/images/thumbs/05.jpg differ
diff --git a/demo/images/thumbs/06.jpg b/demo/images/thumbs/06.jpg
index c13df48..c9f2bcd 100644
Binary files a/demo/images/thumbs/06.jpg and b/demo/images/thumbs/06.jpg differ
diff --git a/demo/images/thumbs/07.jpg b/demo/images/thumbs/07.jpg
index df2a6dc..a80db6e 100644
Binary files a/demo/images/thumbs/07.jpg and b/demo/images/thumbs/07.jpg differ
diff --git a/demo/images/thumbs/08.jpg b/demo/images/thumbs/08.jpg
index d81265c..c177a9e 100644
Binary files a/demo/images/thumbs/08.jpg and b/demo/images/thumbs/08.jpg differ
diff --git a/demo/images/thumbs/09.jpg b/demo/images/thumbs/09.jpg
index 96d59bd..031914c 100644
Binary files a/demo/images/thumbs/09.jpg and b/demo/images/thumbs/09.jpg differ
diff --git a/demo/images/thumbs/10.jpg b/demo/images/thumbs/10.jpg
index 61e56a6..926d68b 100644
Binary files a/demo/images/thumbs/10.jpg and b/demo/images/thumbs/10.jpg differ
diff --git a/demo/images/thumbs/11.jpg b/demo/images/thumbs/11.jpg
index 966bb18..cfc328f 100644
Binary files a/demo/images/thumbs/11.jpg and b/demo/images/thumbs/11.jpg differ
diff --git a/demo/images/thumbs/12.jpg b/demo/images/thumbs/12.jpg
index d8add96..4c8c082 100644
Binary files a/demo/images/thumbs/12.jpg and b/demo/images/thumbs/12.jpg differ
diff --git a/demo/index.html b/demo/index.html
index 53d45a8..4b91b0b 100644
--- a/demo/index.html
+++ b/demo/index.html
@@ -11,7 +11,7 @@
     <meta charset="utf-8" />
     <meta name="description" content="Lozad.js is highly performant, light ~0.5kb and configurable lazy loader in pure JS with no dependencies for images, iframes and more.">
     <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" />
-    <link rel="image_src" href="images/lozad.png"/>
+    <link rel="image_src" href="images/lozad.jpg"/>
     <!--[if lte IE 8]><script src="assets/js/ie/html5shiv.js"></script><![endif]-->
     <link rel="stylesheet" href="assets/css/main.css" />
     <!--[if lte IE 9]><link rel="stylesheet" href="assets/css/ie9.css" /><![endif]-->
@@ -19,7 +19,7 @@
     <meta property="og:title" content="Lozad.js: Highly performant lazy loader" />
     <meta property="og:type" content="website" />
     <meta property="og:url" content="https://apoorv.pro/lozad.js/demo/" />
-    <meta property="og:image" content="https://apoorv.pro/lozad.js/demo/images/lozad.png" />
+    <meta property="og:image" content="https://apoorv.pro/lozad.js/demo/images/lozad.jpg" />
     <meta property="og:description" content="Lozad.js is highly performant, light ~0.5kb and configurable lazy loader in pure JS with no dependencies for images, iframes and more." />
 </head>
 
diff --git a/src/lozad.js b/src/lozad.js
index 111e2a6..62c2de8 100644
--- a/src/lozad.js
+++ b/src/lozad.js
@@ -2,7 +2,12 @@ const defaultConfig = {
   rootMargin: '0px',
   threshold: 0,
   load(element) {
-    element.src = element.dataset.src
+    if (element.dataset.src) {
+      element.src = element.dataset.src
+    }
+    if (element.dataset.srcset) {
+      element.srcset = element.dataset.srcset
+    }
   }
 }
 
@@ -37,7 +42,7 @@ export default function (selector = '.lozad', options = {}) {
     observe() {
       const elements = document.querySelectorAll(selector)
       for (let i = 0; i < elements.length; i++) {
-        if(isLoaded(elements[i])) {
+        if (isLoaded(elements[i])) {
           continue
         }
         if (observer) {
