diff --git a/httpclient.go b/httpclient.go
index <HASH>..<HASH> 100644
--- a/httpclient.go
+++ b/httpclient.go
@@ -32,6 +32,7 @@ var (
 
 	NoRedirect       = errors.New("No redirect")
 	TooManyRedirects = errors.New("stopped after 10 redirects")
+	NotModified      = errors.New("Not modified")
 )
 
 //
@@ -179,6 +180,10 @@ func (r *HttpResponse) ResponseError() error {
 		}
 	}
 
+	if r.StatusCode == http.StatusNotModified {
+		return NotModified
+	}
+
 	return nil
 }
On HTTP status <I> (Not Modified) return a NotModified error, since we are returning an empty body.
Note that for <I>/<I> we are not returning any error (we should) and we are not returning the location.