diff --git a/.travis.yml b/.travis.yml
index 9526e4e465d6272ae30e9b8d157189aeca9607f9..221ded6d59334b68aed69094e1619ec451626585 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -20,6 +20,9 @@ install:
 script:
   - tox
 
+after_success:
+  - coveralls
+
 notifications:
   irc:
     channels:
diff --git a/README.rst b/README.rst
index 5b4f93e2d3c6d24c7e2aba06f9ea4d013d031215..8e16300984d9af785d6aaaf0b1123258578e98e9 100644
--- a/README.rst
+++ b/README.rst
@@ -4,6 +4,9 @@ PyNaCl
 .. image:: https://travis-ci.org/pyca/pynacl.png?branch=master
     :target: https://travis-ci.org/pyca/pynacl
 
+.. image:: https://coveralls.io/repos/pyca/pynacl/badge.png?branch=master
+   :target: https://coveralls.io/r/pyca/pynacl?branch=master
+
 PyNaCl is a Python binding to the `Networking and Cryptography library`_,
 a crypto library with the stated goal of improving usability, security and
 speed.
diff --git a/tox.ini b/tox.ini
index e326e1750c3f036dadb6e32ffcfa2fb55a92bdea..de0282668faa0112fe3653cc287504665cf3204f 100644
--- a/tox.ini
+++ b/tox.ini
@@ -3,5 +3,8 @@ envlist = py26,py27,pypy,py33
 
 [testenv]
 deps =
+    coverage
     pytest
-commands = py.test
+commands =
+    coverage run --source nacl --branch -m pytest
+    coverage report -m