diff --git a/src/sbbs3/main.cpp b/src/sbbs3/main.cpp
index 48f60264b0edb7ba255db172b284b374ea92b3ca..2d35b7068992d835d487e6bd1ac380ca6d11791b 100644
--- a/src/sbbs3/main.cpp
+++ b/src/sbbs3/main.cpp
@@ -3463,7 +3463,7 @@ void node_thread(void* arg)
 		lprintf(LOG_INFO,"Node %d Checking for inactive/expired user records..."
 			,sbbs->cfg.node_num);
 		lastusernum=lastuser(&sbbs->cfg);
-		for(usernum=2;usernum<=lastusernum;usernum++) {
+		for(usernum=1;usernum<=lastusernum;usernum++) {
 
 			sprintf(str,"%5u of %-5u",usernum,lastusernum);
 			status(str);
@@ -3487,6 +3487,9 @@ void node_thread(void* arg)
 			if(strcmp(user.alias,uname))
 				putusername(&sbbs->cfg,user.number,user.alias);
 
+			if(user.number==1)
+				continue;	/* skip expiration/inactivity checks for user #1 */
+
 			if(!(user.misc&(DELETED|INACTIVE))
 				&& user.expire && (ulong)user.expire<=(ulong)now) {
 				putsmsg(&sbbs->cfg,user.number,sbbs->text[AccountHasExpired]);