diff --git a/src/components/profile/profile-new.tsx b/src/components/profile/profile-new.tsx
index bd2a5e80c6d754dd96d7213533d9265415a2b53d..336432b58e94a73709d678f1d93aec11c59ddd53 100644
--- a/src/components/profile/profile-new.tsx
+++ b/src/components/profile/profile-new.tsx
@@ -1,4 +1,4 @@
-import { useState } from "react";
+import { useEffect, useState } from "react";
 import {
   Button,
   Dialog,
@@ -28,6 +28,13 @@ const ProfileNew = (props: Props) => {
     onSubmit(name, desc);
   };
 
+  useEffect(() => {
+    if (!open) {
+      setName("");
+      setDesc("");
+    }
+  }, [open]);
+
   return (
     <Dialog open={open} onClose={onClose}>
       <DialogTitle>Create Profile</DialogTitle>
diff --git a/src/pages/profiles.tsx b/src/pages/profiles.tsx
index 3f75eb0138f7a515048960aba20b9a81b923daa3..4996df20dc8ccd119f6794fe00989962feebd2d4 100644
--- a/src/pages/profiles.tsx
+++ b/src/pages/profiles.tsx
@@ -104,8 +104,8 @@ const ProfilePage = () => {
 
     try {
       await newProfile(name, desc);
-      mutate("getProfiles");
       setDialogOpen(false);
+      mutate("getProfiles");
     } catch (err: any) {
       err && Notice.error(err.toString());
     } finally {