diff --git a/gui/src/components/dataset/DatasetsPage.js b/gui/src/components/dataset/DatasetsPage.js
index e30996ec12009911441bfc66988322248d0cd50b..cc02f5f367ec3eb4dee28bb40c214a3cc6ec3694 100644
--- a/gui/src/components/dataset/DatasetsPage.js
+++ b/gui/src/components/dataset/DatasetsPage.js
@@ -105,11 +105,16 @@ const DatasetActions = React.memo(function VisitDatasetAction({data}) {
   const handleConfirmDoiDialogClose = (value) => {
     setOpenConfirmDoiDialog(false)
   }
+  const tooltip = dataciteEnabled
+    ? !data.doi
+      ? 'Assign a DOI'
+      : 'Dataset already has a DOI'
+    : 'Cannot create a DOI because the DataCite service is not enabled on this deployment'
 
   return <React.Fragment>
-    {dataciteEnabled && <Tooltip title="Assign a DOI">
+    {<Tooltip title={tooltip}>
       <span>
-        <IconButton onClick={() => setOpenConfirmDoiDialog(true)} disabled={!!data.doi}>
+        <IconButton onClick={() => setOpenConfirmDoiDialog(true)} disabled={!dataciteEnabled || !!data.doi}>
           <DOIIcon />
         </IconButton>
       </span>