diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 84949ab0f9384fbd761d52ab0d2b74adf2a983e7..7629353b7208c1f70d2ad76bbc37eff18e816c02 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -747,14 +747,14 @@ (define-public rapidjson
     (name "rapidjson")
     (version "1.1.0")
     (source (origin
-             (method url-fetch)
-             (uri (string-append
-                   "https://github.com/miloyip/rapidjson/archive/v"
-                   version ".tar.gz"))
-             (file-name (string-append name "-" version ".tar.gz"))
+             (method git-fetch)
+             (uri (git-reference
+                   (url "https://github.com/miloyip/rapidjson.git")
+                   (commit (string-append "v" version))))
+             (file-name (git-file-name name version))
              (sha256
               (base32
-               "13nrpvw8f1wx0ga7svbzld7pgrv8l172nangpipnj7jaf0lysz5z"))
+               "1jixgb8w97l9gdh3inihz7avz7i770gy2j2irvvlyrq3wi41f5ab"))
              (modules '((guix build utils)))
              (snippet
               '(begin