How do you make a custom post type invisible for subscribers

register_post_type() accepts a parameter capabilities in its arguments. See get_post_type_capabilities() for possible values.

you can add these settings in your code while registering the custom post type

'capabilities' => array(
'edit_post'          => 'update_core',
'read_post'          => 'update_core',
'delete_post'        => 'update_core',
'edit_posts'         => 'update_core',
'edit_others_posts'  => 'update_core',
'delete_posts'       => 'update_core',
'publish_posts'      => 'update_core',
'read_private_posts' => 'update_core'

),