diff --git a/src/main/java/gov/usgs/earthquake/nshmp/aws/HazardResultSliceLambda.java b/src/main/java/gov/usgs/earthquake/nshmp/aws/HazardResultSliceLambda.java
index 813b121651f06815913be42513002691d97ad99d..5ba9a19fc1bec57f5bd3f45801f2ab846c3b19a5 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/aws/HazardResultSliceLambda.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/aws/HazardResultSliceLambda.java
@@ -43,7 +43,7 @@ import gov.usgs.earthquake.nshmp.www.services.ServletUtil;
 /**
  * AWS Lambda function to read in a curves file from AWS S3 and create slices at
  * return periods interest. <br>
- * 
+ *
  * The results are written to S3 as map.csv bucket.
  */
 @SuppressWarnings("unused")
@@ -174,7 +174,7 @@ public class HazardResultSliceLambda implements RequestStreamHandler {
     }
 
     return Site.builder()
-        .location(lat, lon)
+        .location(lon, lat)
         .name(name)
         .build();
   }
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/site/CybershakeSite.java b/src/main/java/gov/usgs/earthquake/nshmp/site/CybershakeSite.java
index da0d03e04f32ac77c2e05b19eca80a8d77fb2f45..1cd89db28610eb0b868e9673ebd956cc73128b15 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/site/CybershakeSite.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/site/CybershakeSite.java
@@ -118,7 +118,7 @@ public enum CybershakeSite implements NamedLocation {
       double z1p0,
       double z2p5) {
 
-    this.loc = Location.create(lat, lon);
+    this.loc = Location.create(lon, lat);
     this.run = run;
     this.willsVs30 = willsVs30;
     this.cvmVs30 = cvmVs30;
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpPolygon.java b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpPolygon.java
index 4c15b89fcba7ce7d275a63f43dce6b1dd23c79ea..ccc634578b6bd8931a7601b53ac4893499e59af8 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpPolygon.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpPolygon.java
@@ -55,7 +55,7 @@ public enum NshmpPolygon {
   private static LocationList createPolygon(double[][] coords) {
     LocationList.Builder locs = LocationList.builder();
     for (double[] coord : coords) {
-      locs.add(coord[1], coord[0]);
+      locs.add(coord[0], coord[1]);
     }
     return locs.build();
   }
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSite.java b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSite.java
index 7221fa82a600dac33c9ff03df60ee70e40421d14..27041e5f272a34d451acd5d21b77f56963163bc4 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSite.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSite.java
@@ -324,7 +324,7 @@ public enum NshmpSite implements NamedLocation {
   private final String label;
 
   private NshmpSite(double lon, double lat) {
-    this.location = Location.create(lat, lon);
+    this.location = Location.create(lon, lat);
     this.state = UsRegion.valueOf(name().substring(name().lastIndexOf('_') + 1));
     this.label = createLabel();
   }
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSiteFiles.java b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSiteFiles.java
index 2947000aca6d0ff823c3cae5a7d3886eabcc304d..796c767d17d0887354eda31f58f33d5a9c28d19a 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSiteFiles.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/site/NshmpSiteFiles.java
@@ -439,8 +439,8 @@ final class NshmpSiteFiles {
           @Override
           public Location location() {
             return Location.create(
-                Maths.round(input.location().latitude, 1),
-                Maths.round(input.location().longitude, 1));
+                Maths.round(input.location().longitude, 1),
+                Maths.round(input.location().latitude, 1));
           }
 
           @Override
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/site/NuregSite.java b/src/main/java/gov/usgs/earthquake/nshmp/site/NuregSite.java
index b645547a9e4126c046a544769e833eff6ed29cfc..0aba72dce5ca47cc2b92fc9d00c5d4854f82ceea 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/site/NuregSite.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/site/NuregSite.java
@@ -26,7 +26,7 @@ public enum NuregSite implements NamedLocation {
   private final UsRegion state;
 
   private NuregSite(double lon, double lat) {
-    this.loc = Location.create(lat, lon);
+    this.loc = Location.create(lon, lat);
     this.state = UsRegion.valueOf(name().substring(name().lastIndexOf('_') + 1));
   }
 
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/DeaggEpsilonService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/DeaggEpsilonService.java
index 9722ce1189313ce4e591df33987cad63f296f2f0..7ac915038fa8bb1bd7d9ecd106b53ced5e15dc92 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/DeaggEpsilonService.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/DeaggEpsilonService.java
@@ -68,7 +68,7 @@ public final class DeaggEpsilonService {
   /**
    * Handler for {@link DeaggEpsilonController#doGetDeaggEpsilon}. Returns the
    * usage or the deagg result.
-   * 
+   *
    * @param query The query
    * @param urlHelper The URL helper
    */
@@ -180,7 +180,7 @@ public final class DeaggEpsilonService {
     @Override
     public Site apply(CalcConfig config) {
       return Site.builder()
-          .location(Location.create(data.latitude, data.longitude))
+          .location(Location.create(data.longitude, data.latitude))
           .basinDataProvider(data.basin ? basinUrl : null)
           .vs30(data.vs30.value())
           .build();
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java
index 8b36bc0bd977c3d5e13f53c7b57257cab14d07a3..9df7324c967e73faa84595ddfe6adf0cc7e58932 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/HazardService.java
@@ -54,7 +54,7 @@ public final class HazardService {
   /**
    * Handler for {@link HazardController#doGetUsage}. Returns the usage for the
    * hazard service.
-   * 
+   *
    * @param urlHelper The URL helper
    */
   public static HttpResponse<String> handleDoGetUsage(UrlHelper urlHelper) {
@@ -71,7 +71,7 @@ public final class HazardService {
   /**
    * Handler for {@link HazardController#doGetHazard}. Returns the usage or the
    * hazard result.
-   * 
+   *
    * @param query The query
    * @param urlHelper The URL helper
    */
@@ -128,7 +128,7 @@ public final class HazardService {
     public Site apply(CalcConfig config) {
       return Site.builder()
           .basinDataProvider(config.siteData.basinDataProvider)
-          .location(Location.create(data.latitude, data.longitude))
+          .location(Location.create(data.longitude, data.latitude))
           .vs30(data.vs30.value())
           .build();
     }
diff --git a/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java b/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java
index ada84547e6c40a6e5be1d0173e54f341d7a3e8aa..272f69bdb8f789c7493cef79711bfe884ffd5ecd 100644
--- a/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java
+++ b/src/main/java/gov/usgs/earthquake/nshmp/www/services/RateService.java
@@ -52,7 +52,7 @@ public final class RateService {
   /**
    * Handler for {@link RateController#doGetUsageRate} and
    * {@link RateController#doGetUsageProbability}.
-   * 
+   *
    * @param service The service
    * @param urlHelper The url helper
    */
@@ -70,7 +70,7 @@ public final class RateService {
    * Handler for {@link RateController#doGetProbability},
    * {@link RateController#doGetProbabilitySlash},
    * {@link RateController#doGetRate}, and {@link RateController#doGetRateSlash}
-   * 
+   *
    * @param service The service
    * @param query The query
    * @param urlHelper The url helper
@@ -114,7 +114,7 @@ public final class RateService {
 
   private static EqRate calc(Service service, RequestData data)
       throws InterruptedException, ExecutionException {
-    var location = Location.create(data.latitude, data.longitude);
+    var location = Location.create(data.longitude, data.latitude);
     var site = Site.builder().location(location).build();
     var futureRates = new ArrayList<ListenableFuture<EqRate>>();
 
diff --git a/src/test/java/gov/usgs/earthquake/nshmp/site/NshmpSiteTests.java b/src/test/java/gov/usgs/earthquake/nshmp/site/NshmpSiteTests.java
index f6c09d26608cd99399adb8aa611889ef4bb204cc..6d64067a381d7b156649f03330642888ae0b9d93 100644
--- a/src/test/java/gov/usgs/earthquake/nshmp/site/NshmpSiteTests.java
+++ b/src/test/java/gov/usgs/earthquake/nshmp/site/NshmpSiteTests.java
@@ -68,7 +68,7 @@ public class NshmpSiteTests {
   public final void methodsTest() {
     NshmpSite s = WASHINGTON_DC;
     assertEquals(s.state(), UsRegion.DC);
-    assertEquals(s.location(), Location.create(38.90, -77.05));
+    assertEquals(s.location(), Location.create(-77.05, 38.90));
     assertEquals(s.toString(), "Washington DC");
 
     s = MCGRATH_AK;