Try this:
$q = new WP_Query;
$posts = $q->query( array(
\'posts_per_page\' => 1,
\'orderby\' => \'post_modified\', // Sorts by the date modified.
\'order\' => \'DESC\', // Sorts in descending order.
\'no_found_rows\' => true,
) );
// Note that $posts could have more than one post, if your site have sticky
// posts. However, the first post, unless filtered by plugins, would always
// be the most recently modified/updated one.
if ( ! empty( $posts ) ) {
$post = $posts[0];
setup_postdata( $post );
?>
<p>Most recent site update: <?php the_modified_date( \'F d, Y\' ); ?>.</p>
<?php
wp_reset_postdata();
}