diff --git a/javascript/registry.js b/javascript/registry.js
index 4e83e0cbc7b3d7a58db67a72e4edd005192d72a9..f47efb3429593bf112be3f2b99bfc8750068bafe 100644
--- a/javascript/registry.js
+++ b/javascript/registry.js
@@ -36,7 +36,7 @@ const SecurityException = goog.require('tink.exception.SecurityException');
  * Regular users will not usually work with Registry directly, but via primitive
  * factories, which query Registry for the specific KeyManagers in the
  * background. Registry is public though to enable configurations with custom
- * catalogues (primitves or KeyManagers).
+ * catalogues (primitives or KeyManagers).
  *
  * @final
  */
diff --git a/python/aead/aead_key_manager.py b/python/aead/aead_key_manager.py
index 98fd48870c8e98de7967b6f2fb07fb3a47a30dbf..08f6764b30425c3611d74b01791bd7b1e665f577 100644
--- a/python/aead/aead_key_manager.py
+++ b/python/aead/aead_key_manager.py
@@ -31,8 +31,8 @@ from tink.python.core import tink_error
 class _AeadCcToPyWrapper(aead.Aead):
   """Transforms cliffed C++ Aead primitive into a Python primitive."""
 
-  def __init__(self, cc_primitve: cc_aead.Aead):
-    self._aead = cc_primitve
+  def __init__(self, cc_primitive: cc_aead.Aead):
+    self._aead = cc_primitive
 
   @tink_error.use_tink_errors
   def encrypt(self, plaintext: bytes, associated_data: bytes) -> bytes:
diff --git a/python/core/registry.py b/python/core/registry.py
index b91c3ee448b7a698850cd4828ccdcf5dd33c63c0..1f020f349c75cd281e376e9eda878d4a9c32ae2f 100644
--- a/python/core/registry.py
+++ b/python/core/registry.py
@@ -182,7 +182,7 @@ class Registry(object):
         pset_module.PrimitiveSet(wrapper.primitive_class()))
     if not isinstance(wrapped, wrapper.primitive_class()):
       raise tink_error.TinkError(
-          'Wrapper for primitive {} generates incompatibe primitve of type {}'
+          'Wrapper for primitive {} generates incompatible primitive of type {}'
           .format(wrapper.primitive_class().__name__,
                   type(wrapped).__name__))
     cls._wrappers[wrapper.primitive_class()] = wrapper
diff --git a/python/core/registry_test.py b/python/core/registry_test.py
index fba5efc4d6632c913c9980e821a81e29d52292d5..7c01fcdac0f5c42bd5a7e909d58b4132626f3ef0 100644
--- a/python/core/registry_test.py
+++ b/python/core/registry_test.py
@@ -239,7 +239,7 @@ class RegistryTest(absltest.TestCase):
   def test_register_inconsistent_wrapper_fails(self):
     with self.assertRaisesRegex(
         core.TinkError,
-        'Wrapper for primitive Mac generates incompatibe primitve'):
+        'Wrapper for primitive Mac generates incompatible primitive'):
       self.reg.register_primitive_wrapper(InconsistentWrapper())