diff --git a/src/Plugin/Field/FieldFormatter/ProgressBarFieldFormatter.php b/src/Plugin/Field/FieldFormatter/ProgressBarFieldFormatter.php
index 410c987..ee92737 100644
--- a/src/Plugin/Field/FieldFormatter/ProgressBarFieldFormatter.php
+++ b/src/Plugin/Field/FieldFormatter/ProgressBarFieldFormatter.php
@@ -15,6 +15,7 @@ use Drupal\Core\Form\FormStateInterface;
  *   id = "progress_bar",
  *   label = @Translation("Progress bar"),
  *   field_types = {
+ *     "integer",
  *     "list_string",
  *     "list_integer",
  *     "list_float",
@@ -49,6 +50,12 @@ class ProgressBarFieldFormatter extends FormatterBase {
         array($this, 'validate'),
       ),
     ];
+
+    // Remove desciprtion for integer fields, as it uses one color
+    if ($this->fieldDefinition->getType() == 'integer') {
+      $element['progress_bar_color']['#description'] = '';
+    }
+
     return $element;
   }
 
@@ -59,6 +66,15 @@ class ProgressBarFieldFormatter extends FormatterBase {
     $value = $element['#value'];
     $color = explode(',', $value);
     $count = count($color);
+    if ($this->fieldDefinition->getType() == 'integer') {
+      if ($count == 1) {
+        return;
+      }
+      else {
+        $form_state->setError($element, t("Integer fields only support one element."));
+      }
+    }
+
     $field_value = $this->getFieldSetting('allowed_values');
     $field_count = count($field_value);
     if ($field_count == $count) {
@@ -87,7 +103,27 @@ class ProgressBarFieldFormatter extends FormatterBase {
     $allowed_value = [];
     $list_count = '';
     // If field type is state.
-    if ($items->getFieldDefinition()->getType() == 'state') {
+    if ($this->fieldDefinition->getType() == 'integer') {
+      foreach ($items as $delta => $item) {
+
+        $min = ($this->fieldDefinition->getSetting('min')) ? $this->fieldDefinition->getSetting('min') : 0;
+        $max = ($this->fieldDefinition->getSetting('max')) ? $this->fieldDefinition->getSetting('max') : 100;
+        $value = round(($item->value / ($max - $min)) * 100);
+
+        $elements[$delta] = [
+          '#theme' => 'progress_bar_format',
+          '#state' => [[
+            'state' => $value,
+            'name' => $value . $this->fieldDefinition->getSetting('suffix'),
+            'color' => $this->getSetting('progress_bar_color'),
+            'lowest_percent' => $value,
+          ]],
+          '#attached' => array('library' => array('progress_bar/progress-bar')),
+        ];
+      }
+    }
+    // If field type is state.
+    elseif ($items->getFieldDefinition()->getType() == 'state') {
       // Get the workflow and state.
       $workflow_manager = \Drupal::service('plugin.manager.workflow');
       /** @var \Drupal\state_machine\Plugin\Workflow\WorkflowInterface $workflow */
