Can’t save custom field on registration page

You need to use the show_user_profile, edit_user_profile, personal_options_update, and edit_user_profile_update hooks.

You can use the following code format adding additional fields in User section.

 add_action( 'show_user_profile', 'extra_user_profile_fields' );
 add_action( 'edit_user_profile', 'extra_user_profile_fields' );
 function extra_user_profile_fields( $user ) { ?>
<h3><?php _e("Extra profile information", "blank"); ?></h3>

<table class="form-table">
<tr>
    <th><label for="address"><?php _e("Address"); ?></label></th>
    <td>
        <input type="text" name="address" id="address" value="<?php echo esc_attr( get_the_author_meta( 'address', $user->ID ) ); ?>" class="regular-text" /><br />
    </td>
</tr>
</table>
<?php } ?>

For Saving the usemeta’s in database,

add_action( 'personal_options_update', 'save_extra_user_profile_fields' );
add_action( 'edit_user_profile_update', 'save_extra_user_profile_fields' );

function save_extra_user_profile_fields( $user_id ) {
    if ( !current_user_can( 'edit_user', $user_id ) ) { 
       return false; 
    }
    update_user_meta( $user_id, 'address', $_POST['address'] );
}

There are also several blog posts available on the subject that might be helpful:

link 1

link 2

Hope this will helpful for you.