diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm
index 7ba693be0a..0dc8a38899 100644
--- a/code/__DEFINES/preferences.dm
+++ b/code/__DEFINES/preferences.dm
@@ -64,6 +64,7 @@
#define EXP_TYPE_ANTAG "Antag"
#define EXP_TYPE_SPECIAL "Special"
#define EXP_TYPE_GHOST "Ghost"
+#define EXP_TYPE_ADMIN "Admin"
//Flags in the players table in the db
#define DB_FLAG_EXEMPT 1
diff --git a/code/modules/jobs/job_exp.dm b/code/modules/jobs/job_exp.dm
index 3aad52e596..b4679ae479 100644
--- a/code/modules/jobs/job_exp.dm
+++ b/code/modules/jobs/job_exp.dm
@@ -226,9 +226,14 @@ GLOBAL_PROTECT(exp_to_update)
if(!rolefound)
play_records["Unknown"] += minutes
else
- play_records[EXP_TYPE_GHOST] += minutes
- if(announce_changes)
- to_chat(src,"You got: [minutes] Ghost EXP!")
+ if(holder && !holder.deadmined)
+ play_records[EXP_TYPE_ADMIN] += minutes
+ if(announce_changes)
+ to_chat(src,"You got: [minutes] Admin EXP!")
+ else
+ play_records[EXP_TYPE_GHOST] += minutes
+ if(announce_changes)
+ to_chat(src,"You got: [minutes] Ghost EXP!")
else if(isobserver(mob))
play_records[EXP_TYPE_GHOST] += minutes
if(announce_changes)