diff --git a/src/Form/AcquiadamConfig.php b/src/Form/AcquiadamConfig.php
index 1a5b24e..5d852b8 100644
--- a/src/Form/AcquiadamConfig.php
+++ b/src/Form/AcquiadamConfig.php
@@ -182,7 +182,7 @@ class AcquiadamConfig extends ConfigFormBase {
     $form['image']['size_limit'] = [
       '#type' => 'select',
       '#title' => $this->t('Image size limit'),
-      '#description' => $this->t('Limit the source size used when importing image assets. The largest available size up to the selected will be used.'),
+      '#description' => $this->t('Limit the source size used when importing image assets. Images larger than the selected size will be scaled down to this setting.'),
       '#options' => [
         100 => 100,
         150 => 150,
diff --git a/src/Service/AssetImageHelper.php b/src/Service/AssetImageHelper.php
index 1089ee2..a2ec6c7 100644
--- a/src/Service/AssetImageHelper.php
+++ b/src/Service/AssetImageHelper.php
@@ -120,19 +120,28 @@ class AssetImageHelper implements ContainerInjectionInterface {
     if (empty($asset->embeds)) {
       return FALSE;
     }
-    // Check if file_properties are loaded with asset.
-    if (empty($asset->file_properties)) {
-      $dimension = "w";
+
+    $imageProperties = $asset->file_properties->image_properties ?? NULL;
+
+    // If image_properties is not set, then ignore dimention and quality in query.
+    if (!$imageProperties) {
+      $queryBody = [];
     }
     else {
-      $dimension = ($asset->file_properties->image_properties->aspect_ratio > 1) ? "w" : "h";
+      $dimension = ($imageProperties->aspect_ratio > 1) ? "w" : "h";
+
+      // Get smallest of configured max size and image size to prevent upscaling.
+      // @todo Write test to verify this is working as expected.
+      $scaledSize = min($thumbnailSize, max($imageProperties->width, $imageProperties->height));
+
+      $queryBody = [
+        $dimension => $scaledSize,
+        "q" => $this->configFactory->get('media_acquiadam.settings')->get('image_quality') ?? 80,
+      ];
     }
 
     $url = Url::fromUri($asset->embeds->original->url, [
-      "query" => [
-        $dimension => $thumbnailSize,
-        "q" => $this->configFactory->get('media_acquiadam.settings')->get('image_quality') ?? 80,
-      ],
+      "query" => $queryBody,
     ]);
 
     return str_replace("/original/", "/png/", $url->toString());
