diff --git a/packages/component-manuscript/src/components/ManuscriptLayout.js b/packages/component-manuscript/src/components/ManuscriptLayout.js
index ae4ea0de6aa228117a0f4de448f413e29fcc2539..e0bf2d3911b519621facfe53f1c2dbb3b2224853 100644
--- a/packages/component-manuscript/src/components/ManuscriptLayout.js
+++ b/packages/component-manuscript/src/components/ManuscriptLayout.js
@@ -1,6 +1,7 @@
 import React from 'react'
 
 import ManuscriptHeader from './ManuscriptHeader'
+import ManuscriptVersion from './ManuscriptVersion'
 import {
   Root,
   BreadCrumbs,
@@ -8,6 +9,8 @@ import {
   ManuscriptId,
   Container,
   SideBar,
+  LeftDetails,
+  RightDetails,
 } from '../atoms'
 
 const ManuscriptLayout = ({
@@ -20,11 +23,16 @@ const ManuscriptLayout = ({
   <Root>
     <Container flex={3}>
       <Header>
-        <BreadCrumbs>
-          <span>Dashboard</span>
-          <span>Manuscript Details</span>
-        </BreadCrumbs>
-        <ManuscriptId>{`- ID ${project.customId}`}</ManuscriptId>
+        <LeftDetails>
+          <BreadCrumbs>
+            <span>Dashboard</span>
+            <span>Manuscript Details</span>
+          </BreadCrumbs>
+          <ManuscriptId>{`- ID ${project.customId}`}</ManuscriptId>
+        </LeftDetails>
+        <RightDetails>
+          <ManuscriptVersion project={project} />
+        </RightDetails>
       </Header>
       <ManuscriptHeader journal={journal} project={project} version={version} />
     </Container>
diff --git a/packages/component-manuscript/src/components/ManuscriptVersion.js b/packages/component-manuscript/src/components/ManuscriptVersion.js
new file mode 100644
index 0000000000000000000000000000000000000000..ddad835f7ccda0f60b9f15923105b039f3151d40
--- /dev/null
+++ b/packages/component-manuscript/src/components/ManuscriptVersion.js
@@ -0,0 +1,27 @@
+import React from 'react'
+import { get } from 'lodash'
+import { Menu } from '@pubsweet/ui'
+import { compose } from 'recompose'
+import { connect } from 'react-redux'
+import { selectFragments } from 'xpub-selectors'
+import { withRouter } from 'react-router-dom'
+
+import { parseVersionOptions } from './utils'
+
+const ManuscriptVersion = ({ project, fragments, history, match }) => (
+  <Menu
+    inline
+    onChange={v =>
+      history.push(`/projects/${project.id}/versions/${v}/details`)
+    }
+    options={parseVersionOptions(fragments)}
+    value={get(match, 'params.version')}
+  />
+)
+
+export default compose(
+  withRouter,
+  connect((state, { project }) => ({
+    fragments: selectFragments(state, project.fragments),
+  })),
+)(ManuscriptVersion)
diff --git a/packages/component-manuscript/src/components/utils.js b/packages/component-manuscript/src/components/utils.js
index aa176d4c0292a377118aa05ee4a66b9492a877b6..0fb7764d1db83459daa972501fdd4b3bc1afe763 100644
--- a/packages/component-manuscript/src/components/utils.js
+++ b/packages/component-manuscript/src/components/utils.js
@@ -63,6 +63,14 @@ export const parseSearchParams = url => {
   return parsedObject
 }
 
+export const parseVersionOptions = fragments =>
+  fragments.map(f => ({
+    value: f.id,
+    label: `Version ${f.version} - updated on ${moment(f.submitted).format(
+      'DD.MM.YYYY',
+    )}`,
+  }))
+
 const alreadyAnswered = `You have already answered this invitation.`
 export const redirectToError = redirectFn => err => {
   const errorText = get(JSON.parse(err.response), 'error')