How to change textarea rows height for user’s biographical Info?

Unfortunately there is no hook available to modify the HTML for the description field on the edit user page. The output is hard-coded.

One workaround is to use CSS to set a minimum height for the text area. I think this is the best approach.

add_action( 'admin_print_styles-profile.php',   'wpse_user_description_css' );
add_action( 'admin_print_styles-user-edit.php', 'wpse_user_description_css' );
function wpse_user_description_css() { ?>
<style>
    .profile-php #description,
    .user-edit-php #description {
        min-height: 291px;
    }
</style>
<?php
}

Alternatively, we could use JavaScript to set the value of rows to 15:

add_action( 'admin_footer-profile.php',   'wpse_user_description_js' );
add_action( 'admin_footer-user-edit.php', 'wpse_user_description_js' );
function wpse_user_description_js() { ?>
<script>
    var description_box = document.querySelector( "#description" );
    if ( description_box ) {
        description_box.setAttribute( "rows", "15" );
    }
</script>
<?php
}

It would also be technically possible to capture the final output of all of the HTML for the page, then parse and modify it, but that’s way overkill for something like this.