diff --git a/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.java b/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.java
index ab9a54f..152aa8c 100644
--- a/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.java
+++ b/shared/src/main/java/com/android/tools/analytics/AnalyticsSettings.java
@@ -43,7 +43,7 @@
 import java.security.SecureRandom;
 import java.time.Instant;
 import java.time.LocalDate;
-import java.time.ZoneId;
+import java.time.ZoneOffset;
 import java.time.temporal.ChronoUnit;
 import java.util.UUID;
 
@@ -141,8 +141,7 @@
     static int currentSaltSkew() {
         LocalDate now =
                 LocalDate.from(
-                        Instant.ofEpochMilli(sDateProvider.now().getTime())
-                                .atZone(ZoneId.of("GMT")));
+                        Instant.ofEpochMilli(sDateProvider.now().getTime()).atZone(ZoneOffset.UTC));
         // Unix epoch was on a Thursday, but we want Monday to be the day the salt is refreshed.
         long days = ChronoUnit.DAYS.between(EPOCH, now) + 3;
         return (int) (days / 28);
diff --git a/shared/src/test/java/com/android/tools/analytics/StubDateProvider.java b/shared/src/test/java/com/android/tools/analytics/StubDateProvider.java
index 49ffaed..2784bcb 100644
--- a/shared/src/test/java/com/android/tools/analytics/StubDateProvider.java
+++ b/shared/src/test/java/com/android/tools/analytics/StubDateProvider.java
@@ -17,13 +17,17 @@
 
 import com.android.utils.DateProvider;
 
+import java.time.ZoneOffset;
 import java.util.Calendar;
 import java.util.Date;
 import java.util.GregorianCalendar;
+import java.util.TimeZone;
 
 /**
  * A {@link DateProvider} that can be set to a specific date for use in tests. NOTE: months are 0-11
  * while days are 1-31 range.
+ *
+ * Uses UTC as time zone.
  */
 public class StubDateProvider implements DateProvider {
     private final int year;
@@ -39,6 +43,7 @@
     @Override
     public Date now() {
         Calendar calendar = new GregorianCalendar(year, month, day);
+        calendar.setTimeZone(TimeZone.getTimeZone(ZoneOffset.UTC));
         return calendar.getTime();
     }
 }
