diff --git src/wp-admin/includes/schema.php src/wp-admin/includes/schema.php
index dd36834..734e29b 100644
--- src/wp-admin/includes/schema.php
+++ src/wp-admin/includes/schema.php
@@ -385,8 +385,6 @@ function populate_options() {
 	'blogdescription' => __('Just another WordPress site'),
 	'users_can_register' => 0,
 	'admin_email' => 'you@example.com',
-	/* translators: default start of the week. 0 = Sunday, 1 = Monday */
-	'start_of_week' => _x( '1', 'start of week' ),
 	'use_balanceTags' => 0,
 	'use_smilies' => 1,
 	'require_name_email' => 1,
diff --git src/wp-admin/options-general.php src/wp-admin/options-general.php
index 662184a..e07eca5 100644
--- src/wp-admin/options-general.php
+++ src/wp-admin/options-general.php
@@ -114,6 +114,9 @@ if ( $new_admin_email && $new_admin_email != get_option('admin_email') ) : ?>
 </td>
 </tr>
 <?php } ?>
+</table>
+<h3 class="title"><?php _e( 'Locale' ); ?></h3>
+<table class="form-table">
 <tr>
 <?php
 $current_offset = get_option('gmt_offset');
@@ -274,22 +277,6 @@ if ( empty($tzstring) ) { // Create a UTC+- zone if no timezone string exists
 	</fieldset>
 </td>
 </tr>
-<tr>
-<th scope="row"><label for="start_of_week"><?php _e('Week Starts On') ?></label></th>
-<td><select name="start_of_week" id="start_of_week">
-<?php
-/**
- * @global WP_Locale $wp_locale
- */
-global $wp_locale;
-
-for ($day_index = 0; $day_index <= 6; $day_index++) :
-	$selected = (get_option('start_of_week') == $day_index) ? 'selected="selected"' : '';
-	echo "\n\t<option value='" . esc_attr($day_index) . "' $selected>" . $wp_locale->get_weekday($day_index) . '</option>';
-endfor;
-?>
-</select></td>
-</tr>
 <?php do_settings_fields('general', 'default'); ?>
 
 <?php
diff --git src/wp-admin/options.php src/wp-admin/options.php
index 6bad0fd..d5d5acf 100644
--- src/wp-admin/options.php
+++ src/wp-admin/options.php
@@ -82,7 +82,7 @@ if ( is_multisite() && ! is_super_admin() && 'update' != $action ) {
 }
 
 $whitelist_options = array(
-	'general' => array( 'blogname', 'blogdescription', 'gmt_offset', 'date_format', 'time_format', 'start_of_week', 'timezone_string', 'WPLANG' ),
+	'general' => array( 'blogname', 'blogdescription', 'gmt_offset', 'date_format', 'time_format', 'timezone_string', 'WPLANG' ),
 	'discussion' => array( 'default_pingback_flag', 'default_ping_status', 'default_comment_status', 'comments_notify', 'moderation_notify', 'comment_moderation', 'require_name_email', 'comment_whitelist', 'comment_max_links', 'moderation_keys', 'blacklist_keys', 'show_avatars', 'avatar_rating', 'avatar_default', 'close_comments_for_old_posts', 'close_comments_days_old', 'thread_comments', 'thread_comments_depth', 'page_comments', 'comments_per_page', 'default_comments_page', 'comment_order', 'comment_registration' ),
 	'media' => array( 'thumbnail_size_w', 'thumbnail_size_h', 'thumbnail_crop', 'medium_size_w', 'medium_size_h', 'large_size_w', 'large_size_h', 'image_default_size', 'image_default_align', 'image_default_link_type' ),
 	'reading' => array( 'posts_per_page', 'posts_per_rss', 'rss_use_excerpt', 'show_on_front', 'page_on_front', 'page_for_posts', 'blog_public' ),
diff --git src/wp-includes/default-filters.php src/wp-includes/default-filters.php
index e9ddc47..9fdd320 100644
--- src/wp-includes/default-filters.php
+++ src/wp-includes/default-filters.php
@@ -305,6 +305,9 @@ add_action( 'wp_head', 'wp_post_preview_js', 1 );
 // Timezone
 add_filter( 'pre_option_gmt_offset','wp_timezone_override_offset' );
 
+// Start of the week.
+add_filter( 'default_option_start_of_week', '_wp_get_start_of_week' );
+
 // Admin Color Schemes
 add_action( 'admin_init', 'register_admin_color_schemes', 1);
 add_action( 'admin_color_scheme_picker', 'admin_color_scheme_picker' );
@@ -355,7 +358,6 @@ add_action( 'delete_attachment', '_delete_attachment_theme_mod' );
 // Calendar widget cache
 add_action( 'save_post', 'delete_get_calendar_cache' );
 add_action( 'delete_post', 'delete_get_calendar_cache' );
-add_action( 'update_option_start_of_week', 'delete_get_calendar_cache' );
 add_action( 'update_option_gmt_offset', 'delete_get_calendar_cache' );
 
 // Author
diff --git src/wp-includes/functions.php src/wp-includes/functions.php
index a275023..750220f 100644
--- src/wp-includes/functions.php
+++ src/wp-includes/functions.php
@@ -2928,6 +2928,21 @@ function _mce_set_direction( $input ) {
 	return $input;
 }
 
+/**
+ * Retrieve the start of the week setting.
+ *
+ * @since 4.4.0
+ * @access private
+ *
+ * @global WP_Locale $wp_locale
+ *
+ * @param string $value The option value.
+ * @return int The start of the week set by the locale.
+ */
+function _wp_get_start_of_week( $value ) {
+	global $wp_locale;
+	return (int) $wp_locale->start_of_week;
+}
 
 /**
  * Convert smiley code to the icon graphic file equivalent.
diff --git src/wp-includes/locale.php src/wp-includes/locale.php
index ded3378..46e0836 100644
--- src/wp-includes/locale.php
+++ src/wp-includes/locale.php
@@ -42,6 +42,13 @@ class WP_Locale {
 	public $weekday_abbrev;
 
 	/**
+	 * Stores the default start of the week.
+	 *
+	 * @var string
+	 */
+	public $start_of_week;
+
+	/**
 	 * Stores the translated strings for the full month names.
 	 *
 	 * @since 2.1.0
@@ -114,6 +121,9 @@ class WP_Locale {
 		$this->weekday_initial[ __( 'Friday' ) ]    = /* translators: one-letter abbreviation of the weekday */ _x( 'F', 'Friday initial' );
 		$this->weekday_initial[ __( 'Saturday' ) ]  = /* translators: one-letter abbreviation of the weekday */ _x( 'S', 'Saturday initial' );
 
+		// Start of the week.
+		$this->start_of_week = /* translators: default start of the week. 0 = Sunday, 1 = Monday */ _x( '1', 'start of week' );
+
 		// Abbreviations for each day.
 		$this->weekday_abbrev[__('Sunday')]    = /* translators: three-letter abbreviation of the weekday */ __('Sun');
 		$this->weekday_abbrev[__('Monday')]    = /* translators: three-letter abbreviation of the weekday */ __('Mon');
