Index: frontend/src/pages/UserDetail.tsx
===================================================================
--- frontend/src/pages/UserDetail.tsx	(revision 2730163380202029196d71a92f0cbde3dfdd5b0a)
+++ frontend/src/pages/UserDetail.tsx	(revision d2af1a6462831374bb635fedb32ad46c8129abf2)
@@ -13,4 +13,10 @@
 } from "../utils/types";
 
+interface FollowStatus {
+  isFollowing: boolean;
+  followerCount: number;
+  followingCount: number;
+}
+
 interface Artist extends BaseNonAdminUser {
   userType: "ARTIST";
@@ -43,12 +49,49 @@
     setIsFollowing(true);
     try {
-      const response = await axiosInstance.post<UserProfile>(
+      const response = await axiosInstance.post<FollowStatus>(
         `/users/${userId}/follow`,
       );
-      setUser(response.data);
+      setUser((prev) => {
+        if (!prev) return null;
+        return {
+          ...prev,
+          isFollowedByCurrentUser: response.data.isFollowing,
+          followers: response.data.followerCount,
+          following: response.data.followingCount,
+        };
+      });
     } catch (err: any) {
       setError(handleError(err));
     } finally {
       setIsFollowing(false);
+    }
+  };
+
+  const handleFollowInModal = async (targetId: number) => {
+    try {
+      const response = await axiosInstance.post<FollowStatus>(
+        `/users/${targetId}/follow`,
+      );
+
+      setModalUsers((prevUsers) =>
+        prevUsers.map((u) =>
+          u.id === targetId
+            ? { ...u, isFollowedByCurrentUser: response.data.isFollowing }
+            : u,
+        ),
+      );
+
+      // if (user && user.id === targetId) {
+      //   setUser((prev) => {
+      //     if (!prev) return null;
+      //     return {
+      //       ...prev,
+      //       isFollowedByCurrentUser: response.data.isFollowing,
+      //       followers: response.data.followerCount,
+      //     };
+      //   });
+      // }
+    } catch (err: any) {
+      setError(handleError(err));
     }
   };
@@ -81,29 +124,4 @@
   };
 
-  const handleFollowInModal = async (targetId: number) => {
-    try {
-      await axiosInstance.post(`/users/${targetId}/follow`);
-      setModalUsers((prevUsers) =>
-        prevUsers.map((u) => {
-          if (u.id === targetId) {
-            const isNowFollowing = !u.isFollowedByCurrentUser;
-            return {
-              ...u,
-              isFollowedByCurrentUser: isNowFollowing,
-            };
-          }
-          return u;
-        }),
-      );
-
-      // if (user && user.id === targetId) {
-      //   const response = await axiosInstance.get(`/users/${targetId}`);
-      //   setUser(response.data);
-      // }
-    } catch (err: any) {
-      setError(handleError(err));
-    }
-  };
-
   useEffect(() => {
     const fetchUser = async () => {
@@ -111,4 +129,5 @@
       try {
         const response = await axiosInstance.get(`/users/${userId}`);
+        console.log(response.data);
         setUser(response.data);
       } catch (err: any) {
