diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index ea00a43..e8dbc2d 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -2246,6 +2246,8 @@
    buffer protocol.  Builtin objects that support the buffer protocol include
    :class:`bytes` and :class:`bytearray`.
 
+   ``len(view)`` returns the total number of bytes in the memoryview, *view*.
+
    A :class:`memoryview` supports slicing to expose its data.  Taking a single
    index will return a single byte.  Full slicing will result in a subview::
 
@@ -2322,10 +2324,6 @@
       A tuple of integers the length of :attr:`ndim` giving the size in bytes to
       access each element for each dimension of the array.
 
-   .. attribute:: size
-
-      The number of bytes in the buffer.  Also available as ``len(view)``.
-
    .. memoryview.suboffsets isn't documented because it only seems useful for C
 
 
diff --git a/Lib/test/test_memoryview.py b/Lib/test/test_memoryview.py
index 0f6fc55..93a3fcb 100644
--- a/Lib/test/test_memoryview.py
+++ b/Lib/test/test_memoryview.py
@@ -146,7 +146,7 @@
         self.assertEquals(m.itemsize, 1)
         self.assertEquals(m.ndim, 1)
         self.assertEquals(m.shape, (6,))
-        self.assertEquals(m.size, 6)
+        self.assertEquals(len(m), 6)
         self.assertEquals(m.strides, (1,))
         self.assertEquals(m.suboffsets, None)
         return m
diff --git a/Misc/NEWS b/Misc/NEWS
index 21d269b..c2734c8 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -12,6 +12,8 @@
 Core and Builtins
 -----------------
 
+- Issue #3827: memoryview lost its size attribute in favor of using len(view).
+
 - Issue #3813: could not lanch python.exe via symbolic link on cygwin.
 
 - Issue #3705: fix crash when given a non-ascii value on the command line for
diff --git a/Objects/memoryobject.c b/Objects/memoryobject.c
index fbb1af6..32e5c44 100644
--- a/Objects/memoryobject.c
+++ b/Objects/memoryobject.c
@@ -370,12 +370,6 @@
 }
 
 static PyObject *
-memory_size_get(PyMemoryViewObject *self)
-{
-        return PyLong_FromSsize_t(self->view.len);
-}
-
-static PyObject *
 memory_readonly_get(PyMemoryViewObject *self)
 {
         return PyBool_FromLong(self->view.readonly);
@@ -393,7 +387,6 @@
         {"shape",	(getter)memory_shape_get,	NULL, NULL},
         {"strides",	(getter)memory_strides_get,	NULL, NULL},
         {"suboffsets",	(getter)memory_suboffsets_get,	NULL, NULL},
-        {"size",	(getter)memory_size_get,	NULL, NULL},
         {"readonly",	(getter)memory_readonly_get,	NULL, NULL},
         {"ndim",	(getter)memory_ndim_get,	NULL, NULL},
         {NULL, NULL, NULL, NULL},
