diff --git a/packages/component-faraday-ui/src/IconButton.js b/packages/component-faraday-ui/src/IconButton.js
index 6d160baddcc7c2273d92d33a4d7be980af78b0b7..5e4b4acfc0f531676ed49913b60bd8b960e871ee 100644
--- a/packages/component-faraday-ui/src/IconButton.js
+++ b/packages/component-faraday-ui/src/IconButton.js
@@ -2,7 +2,7 @@ import React from 'react'
 import { Icon } from '@pubsweet/ui'
 import styled from 'styled-components'
 
-import { positionHelper, marginHelper } from './styledHelpers'
+import { positionHelper, marginHelper, paddingHelper } from './styledHelpers'
 
 const IconButton = styled.div`
   align-items: center;
@@ -20,6 +20,7 @@ const IconButton = styled.div`
   }
 
   ${marginHelper};
+  ${paddingHelper};
   ${positionHelper};
 `
 
diff --git a/packages/component-faraday-ui/src/WizardAuthors.js b/packages/component-faraday-ui/src/WizardAuthors.js
index d9309bddeaeacf448ea5ecc90548502dbae73eeb..3d951ec7aa7f910d3332e7584172e340a76b4e8e 100644
--- a/packages/component-faraday-ui/src/WizardAuthors.js
+++ b/packages/component-faraday-ui/src/WizardAuthors.js
@@ -106,17 +106,24 @@ export default compose(
   withFetching,
   withState('authors', 'setAuthors', ({ authors }) => authors),
   withHandlers({
-    setFormAuthors: ({ changeForm, setAuthors, setFetching }) => authors => {
+    setFormAuthors: ({
+      changeForm,
+      setAuthors,
+      setFetching,
+      onAuthorEdit,
+    }) => authors => {
       setAuthors(authors)
       setFetching(false)
+      onAuthorEdit(null)
       changeForm('submission', 'authors', authors)
     },
   }),
   withHandlers({
-    addNewAuthor: ({ authors = [], setAuthors }) => () => {
+    addNewAuthor: ({ authors = [], setAuthors, onAuthorEdit }) => () => {
       if (authors.some(a => a.id === 'newAuthor')) {
         return
       }
+      onAuthorEdit(0)
       setAuthors([
         ...authors,
         { id: 'newAuthor', isCorresponding: false, isSubmitting: false },
diff --git a/packages/component-faraday-ui/src/modals/FormModal.js b/packages/component-faraday-ui/src/modals/FormModal.js
index 7c03e118d7d0d9383972d139c0545dcfc816b7f2..e9adb3b78c837287a61182aefc121b1851bbad5d 100644
--- a/packages/component-faraday-ui/src/modals/FormModal.js
+++ b/packages/component-faraday-ui/src/modals/FormModal.js
@@ -26,7 +26,7 @@ import {
 
 const AddUserForm = ({ roles, countries, titles }) => (
   <Fragment>
-    <Row alignItems="center" mb={2}>
+    <Row alignItems="baseline" mb={1} mt={1}>
       <Item mr={1} vertical>
         <Label required>Email</Label>
         <ValidatedField
@@ -133,18 +133,18 @@ const EditForm = ({ titles, countries }) => (
         <Label>Roles</Label>
       </Item>
     </Row>
-    <RowOverrideAlert mb={2} mt={1}>
+    <RowOverrideAlert mb={3} mt={1}>
       <Item>
         <ValidatedField
           component={({ value, onChange }) => (
             <Checkbox
               checked={value}
-              label="Author"
+              label="Editor in Chief"
               onChange={onChange}
               value={value}
             />
           )}
-          name="author"
+          name="editorInChief"
         />
       </Item>
       <Item>
@@ -174,21 +174,6 @@ const EditForm = ({ titles, countries }) => (
         />
       </Item>
     </RowOverrideAlert>
-    <RowOverrideAlert mb={3}>
-      <Item>
-        <ValidatedField
-          component={({ value, onChange }) => (
-            <Checkbox
-              checked={value}
-              label="Editor in Chief"
-              onChange={onChange}
-              value={value}
-            />
-          )}
-          name="editorInChief"
-        />
-      </Item>
-    </RowOverrideAlert>
   </Fragment>
 )
 
diff --git a/packages/components-faraday/src/components/Admin/AddUser.js b/packages/components-faraday/src/components/Admin/AddUser.js
index f2b1e1f8402b1f2b8cc8387fff6b1d03d04a9d81..572e42f0755c5f0ae873b190c0d6864b1889139e 100644
--- a/packages/components-faraday/src/components/Admin/AddUser.js
+++ b/packages/components-faraday/src/components/Admin/AddUser.js
@@ -22,7 +22,7 @@ const AddUser = ({ edit, journal, handleSubmit, ...rest }) => (
   >
     {showModal =>
       edit ? (
-        <IconButton icon="edit-2" iconSize={2} onClick={showModal} />
+        <IconButton icon="edit-2" iconSize={2} onClick={showModal} pt={1 / 2} />
       ) : (
         <ActionLink icon="plus" onClick={showModal}>
           ADD USER
diff --git a/packages/components-faraday/src/components/Admin/AdminUsers.js b/packages/components-faraday/src/components/Admin/AdminUsers.js
index e1be63f85f08210d8865466d349e64737aa8bed3..38feb450946165d46cf31ff81b966018eb016634 100644
--- a/packages/components-faraday/src/components/Admin/AdminUsers.js
+++ b/packages/components-faraday/src/components/Admin/AdminUsers.js
@@ -41,7 +41,7 @@ const Users = ({
   ...rest
 }) => (
   <Fragment>
-    <Row alignItems="center" justify="space-between" mb={3}>
+    <Row alignItems="center" justify="space-between" mb={1}>
       <Item alignItems="center">
         <ActionLink icon="arrow-left" mr={2} onClick={history.goBack}>
           Admin Dashboard
@@ -57,74 +57,85 @@ const Users = ({
       <Pagination {...rest} itemsPerPage={itemsPerPage} page={page} />
     </Row>
 
-    <Row alignItems="center" mb={1} pl={2}>
-      <Item flex={2}>
-        <Label>Full name</Label>
-      </Item>
-      <Item flex={4}>
-        <Label>Email</Label>
-      </Item>
-      <Item flex={2}>
-        <Label>Affiliation</Label>
-      </Item>
-      <Item flex={2}>
-        <Label>Roles</Label>
-      </Item>
-      <Item flex={1}>
-        <Label>Status</Label>
-      </Item>
-      <Item />
-      <Item />
-    </Row>
-    {paginatedItems.map(user => (
-      <UserRow alignItems="center" key={user.id} pb={1 / 2} pl={2} pt={1 / 2}>
-        <Item flex={2}>
-          <Text>{`${get(user, 'firstName', '')} ${get(
-            user,
-            'lastName',
-            '',
-          )}`}</Text>
-        </Item>
-        <Item flex={4}>
-          <Text>{user.email}</Text>
-        </Item>
-        <Item flex={2}>
-          <Text>{user.affiliation}</Text>
-        </Item>
-        <Item flex={2}>
-          <Text customId>{getUserRoles(user)}</Text>
-        </Item>
-        <Item flex={1} secondary>
-          <Text>{getStatusLabel(user)}</Text>
-        </Item>
-        <HiddenItem justify="center">
-          <AddUser
-            edit
-            getUsers={getUsers}
-            modalKey={`edit-${user.id}`}
-            onSubmit={onSubmit}
-            user={user}
-          />
-        </HiddenItem>
-        <HiddenItem justify="justify" pl={1} pr={1}>
-          {!user.admin && (
-            <OpenModal
-              isFetching={isFetching}
-              modalKey={`deactivate-${user.id}`}
-              onConfirm={deactivateUser(user)}
-              subtitle={`${user.firstName} ${user.lastName}`}
-              title="Are you sure to deactivate user?"
-            >
-              {showModal => (
-                <Button onClick={showModal} size="small">
-                  {user.isActive ? 'DEACTIVATE' : 'ACTIVATE'}
-                </Button>
-              )}
-            </OpenModal>
-          )}
-        </HiddenItem>
-      </UserRow>
-    ))}
+    <Table>
+      <thead>
+        <tr>
+          <th>
+            <Label>Full Name</Label>
+          </th>
+          <th colSpan={2}>
+            <Label>Email</Label>
+          </th>
+          <th>
+            <Label>Affiliation</Label>
+          </th>
+          <th>
+            <Label>Roles</Label>
+          </th>
+          <th>
+            <Label>Status</Label>
+          </th>
+          <th>&nbsp;</th>
+        </tr>
+      </thead>
+      <tbody>
+        {paginatedItems.map(user => (
+          <UserRow key={user.id}>
+            <td>
+              <Text pl={1}>{`${get(user, 'firstName', '')} ${get(
+                user,
+                'lastName',
+                '',
+              )}`}</Text>
+            </td>
+            <td colSpan={2}>
+              <Text>{user.email}</Text>
+            </td>
+            <td>
+              <Text>{user.affiliation}</Text>
+            </td>
+            <td>
+              <Text customId>{getUserRoles(user)}</Text>
+            </td>
+            <td>
+              <Text secondary>{getStatusLabel(user)}</Text>
+            </td>
+
+            <HiddenCell>
+              <Item alignItems="center" justify="flex-end">
+                <AddUser
+                  edit
+                  getUsers={getUsers}
+                  modalKey={`edit-${user.id}`}
+                  onSubmit={onSubmit}
+                  user={user}
+                />
+                <OpenModal
+                  isFetching={isFetching}
+                  modalKey={`deactivate-${user.id}`}
+                  onConfirm={deactivateUser(user)}
+                  subtitle={`${user.firstName} ${user.lastName}`}
+                  title={`Are you sure to ${
+                    !user.isActive ? 'activate' : 'deactivate'
+                  } user?`}
+                >
+                  {showModal => (
+                    <ActivateButton
+                      ml={1}
+                      mr={1}
+                      onClick={showModal}
+                      size="small"
+                    >
+                      {!user.isActive ? 'ACTIVATE' : 'DEACTIVATE'}
+                    </ActivateButton>
+                  )}
+                </OpenModal>
+              </Item>
+            </HiddenCell>
+          </UserRow>
+        ))}
+      </tbody>
+    </Table>
   </Fragment>
 )
 
@@ -162,27 +173,46 @@ export default compose(
           setModalError('Something went wrong...')
         })
     },
-    getUserRoles: ({ journal: { roles = {} } }) => user =>
-      Object.entries(roles)
+    getUserRoles: ({ journal: { roles = {} } }) => user => {
+      const parsedRoles = Object.entries(roles)
         .reduce((acc, role) => (user[role[0]] ? [...acc, role[1]] : acc), [])
-        .join(', '),
+        .join(', ')
+
+      return parsedRoles || 'Author'
+    },
   }),
 )(Users)
 
 // #region styled-components
-const HiddenItem = styled(Item)`
+const Table = styled.table`
+  border-collapse: collapse;
+
+  & th,
+  & td {
+    border: none;
+    text-align: start;
+    vertical-align: middle;
+    height: calc(${th('gridUnit')} * 5);
+  }
+`
+
+const HiddenCell = styled.td`
   opacity: 0;
 `
 
-const UserRow = styled(Row)`
+const UserRow = styled.tr`
   background-color: ${th('colorBackgroundHue2')};
+  border-bottom: 1px solid ${th('colorBorder')};
 
   &:hover {
     background-color: #eeeeee;
 
-    ${HiddenItem} {
+    ${HiddenCell} {
       opacity: 1;
     }
   }
 `
+const ActivateButton = styled(Button)`
+  width: 90px;
+`
 // #endregion
diff --git a/packages/xpub-faraday/config/validations.js b/packages/xpub-faraday/config/validations.js
index 187de26e47ebe25b056898df01856117c0551566..8b2dc4aae313169d35555b934fba2ae4fc2d4428 100644
--- a/packages/xpub-faraday/config/validations.js
+++ b/packages/xpub-faraday/config/validations.js
@@ -140,7 +140,6 @@ module.exports = {
     country: Joi.string().allow(''),
     title: Joi.string().allow(''),
     teams: Joi.array(),
-    author: Joi.boolean(),
     editorInChief: Joi.boolean(),
     handlingEditor: Joi.boolean(),
     invitationToken: Joi.string().allow(''),