diff --git a/src/tracking/tracking.service.ts b/src/tracking/tracking.service.ts
index ff97aae3993f62c9dbb342ca9ff5744001d32366..58d64b94f362a3c4e01e2a457442c6812d469551 100644
--- a/src/tracking/tracking.service.ts
+++ b/src/tracking/tracking.service.ts
@@ -15,6 +15,13 @@ export class TrackingService {
     private gamepersonrepository: Repository<Game_PersonEntity>,
   ) {}
 
+  private icons = {
+    null: 'infantry.svg',
+    infantry: 'infantry.svg',
+    recon: 'recon.svg',
+    mechanized: 'mechanized.svg',
+  };
+
   async trackLocation(
     gameperson: Game_PersonEntity,
     gameId,
@@ -37,7 +44,7 @@ export class TrackingService {
       trackdata['time'] = Date.now();
       // initialize data
       trackedperson = await this.trackingrepository.create(trackedperson);
-      trackedperson.icon = 'infantry.svg';
+      trackedperson.icon = this.icons[gameperson.group.class];
       trackedperson.data = [trackdata];
       trackedperson.faction = gameperson.faction;
       trackedperson.game = gameId;