diff --git a/src/org.gnome.Terminal.gschema.xml b/src/org.gnome.Terminal.gschema.xml
index ebb450bc..175c44a4 100644
--- a/src/org.gnome.Terminal.gschema.xml
+++ b/src/org.gnome.Terminal.gschema.xml
@@ -137,6 +137,14 @@
       <summary>Whether bold text should use the same color as normal text</summary>
       <description>If true, boldface text will be rendered using the same color as normal text.</description>
     </key>
+    <key name="cell-height-scale" type="d">
+      <default>1.0</default>
+      <summary>Scale factor for the cell height to increase line spacing. (Does not increase the font's height.)</summary>
+    </key>
+    <key name="cell-width-scale" type="d">
+      <default>1.0</default>
+      <summary>Scale factor for the cell width to increase letter spacing. (Does not increase the font's width.)</summary>
+    </key>
     <key name="cursor-colors-set" type="b">
       <default>false</default>
       <summary>Whether to use custom cursor colors</summary>
diff --git a/src/terminal-schemas.h b/src/terminal-schemas.h
index 4b734a39..e8ef6c0e 100644
--- a/src/terminal-schemas.h
+++ b/src/terminal-schemas.h
@@ -36,6 +36,8 @@ G_BEGIN_DECLS
 #define TERMINAL_PROFILE_BACKSPACE_BINDING_KEY          "backspace-binding"
 #define TERMINAL_PROFILE_BOLD_COLOR_KEY                 "bold-color"
 #define TERMINAL_PROFILE_BOLD_COLOR_SAME_AS_FG_KEY      "bold-color-same-as-fg"
+#define TERMINAL_PROFILE_CELL_HEIGHT_SCALE_KEY          "cell-height-scale"
+#define TERMINAL_PROFILE_CELL_WIDTH_SCALE_KEY           "cell-width-scale"
 #define TERMINAL_PROFILE_CURSOR_COLORS_SET_KEY          "cursor-colors-set"
 #define TERMINAL_PROFILE_CURSOR_BACKGROUND_COLOR_KEY    "cursor-background-color"
 #define TERMINAL_PROFILE_CURSOR_FOREGROUND_COLOR_KEY    "cursor-foreground-color"
diff --git a/src/terminal-screen.c b/src/terminal-screen.c
index f6cc4a52..57d35131 100644
--- a/src/terminal-screen.c
+++ b/src/terminal-screen.c
@@ -818,7 +818,9 @@ terminal_screen_profile_changed_cb (GSettings     *profile,
   if (gtk_widget_get_realized (GTK_WIDGET (screen)) &&
       (!prop_name ||
        prop_name == I_(TERMINAL_PROFILE_USE_SYSTEM_FONT_KEY) ||
-       prop_name == I_(TERMINAL_PROFILE_FONT_KEY)))
+       prop_name == I_(TERMINAL_PROFILE_FONT_KEY) ||
+       prop_name == I_(TERMINAL_PROFILE_CELL_WIDTH_SCALE_KEY) ||
+       prop_name == I_(TERMINAL_PROFILE_CELL_HEIGHT_SCALE_KEY)))
     terminal_screen_set_font (screen);
 
   if (!prop_name ||
@@ -984,6 +986,11 @@ terminal_screen_set_font (TerminalScreen *screen)
   vte_terminal_set_font (VTE_TERMINAL (screen), desc);
 
   pango_font_description_free (desc);
+
+  vte_terminal_set_cell_width_scale (VTE_TERMINAL (screen),
+                                     g_settings_get_double (profile, TERMINAL_PROFILE_CELL_WIDTH_SCALE_KEY));
+  vte_terminal_set_cell_height_scale (VTE_TERMINAL (screen),
+                                      g_settings_get_double (profile, TERMINAL_PROFILE_CELL_HEIGHT_SCALE_KEY));
 }
 
 static void
