diff --git a/docs/release.rst b/docs/release.rst
index e7802fecbb..0098d2e50b 100644
--- a/docs/release.rst
+++ b/docs/release.rst
@@ -61,6 +61,9 @@ Bug fixes
 * NestedDirectoryStore.listdir now returns chunk keys with the correct '/' dimension_separator.
   By :user:`Brett Graham <braingram>` :issue:`1334`.
 
+* N5Store/N5FSStore dtype returns zarr Stores readable dtype.
+  By :user:`Marwan Zouinkhi <mzouink>` :issue:`1339`.
+
 .. _release_2.13.6:
 
 2.13.6
diff --git a/zarr/n5.py b/zarr/n5.py
index 4c93ce4acb..1eb6ef2b33 100644
--- a/zarr/n5.py
+++ b/zarr/n5.py
@@ -689,6 +689,7 @@ def array_metadata_to_zarr(array_metadata: Dict[str, Any],
     array_metadata['order'] = 'C'
     array_metadata['filters'] = []
     array_metadata['dimension_separator'] = '.'
+    array_metadata['dtype'] = np.dtype(array_metadata['dtype']).str
 
     compressor_config = array_metadata['compressor']
     compressor_config = compressor_config_to_zarr(compressor_config)
diff --git a/zarr/tests/test_core.py b/zarr/tests/test_core.py
index b54fe3ddf0..ba89db3b06 100644
--- a/zarr/tests/test_core.py
+++ b/zarr/tests/test_core.py
@@ -2034,13 +2034,12 @@ def test_compressors(self):
             assert np.all(a2[:] == 1)
 
     def expected(self):
-        return [
-           '4e9cf910000506455f82a70938a272a3fce932e5',
-           'f9d4cbf1402901f63dea7acf764d2546e4b6aa38',
-           '1d8199f5f7b70d61aa0d29cc375212c3df07d50a',
-           '874880f91aa6736825584509144afe6b06b0c05c',
-           'e2258fedc74752196a8c8383db49e27193c995e2',
-           ]
+        return ['8811a77d54caaa1901d5cc4452d946ae433c8d90',
+                'd880b007d9779db5f2cdbe13274eb1cbac4a425a',
+                'd80eb66d5521744f051e816ab368d8ccfc2e3edf',
+                '568f9f837e4b682a3819cb122988e2eebeb6572b',
+                '4fdf4475d786d6694110db5619acd30c80dfc372'
+                ]
 
 
 @pytest.mark.skipif(have_fsspec is False, reason="needs fsspec")
diff --git a/zarr/tests/test_n5.py b/zarr/tests/test_n5.py
index a1a0a83e36..8f6d97dd51 100644
--- a/zarr/tests/test_n5.py
+++ b/zarr/tests/test_n5.py
@@ -1,10 +1,15 @@
-
 import pytest
 
-from zarr.n5 import N5ChunkWrapper
+from zarr.n5 import N5ChunkWrapper, N5FSStore
+from zarr.creation import create
+from zarr.storage import atexit_rmtree
 from numcodecs import GZip
 import numpy as np
 from typing import Tuple
+import json
+import atexit
+
+from zarr.tests.util import have_fsspec
 
 
 def test_make_n5_chunk_wrapper():
@@ -35,3 +40,15 @@ def test_partial_chunk_decode(chunk_shape: Tuple[int, ...]):
     chunk[subslices] = 1
     subchunk = np.ascontiguousarray(chunk[subslices])
     assert np.array_equal(codec_wrapped.decode(codec_wrapped.encode(subchunk)), chunk)
+
+
+@pytest.mark.skipif(have_fsspec is False, reason="needs fsspec")
+def test_dtype_decode():
+    path = 'data/array.n5'
+    atexit_rmtree(path)
+    atexit.register(atexit_rmtree, path)
+    n5_store = N5FSStore(path)
+    create(100, store=n5_store)
+    dtype_n5 = json.loads(n5_store[".zarray"])["dtype"]
+    dtype_zarr = json.loads(create(100).store[".zarray"])["dtype"]
+    assert dtype_n5 == dtype_zarr