Hook into Entry::EVENT_AFTER_SAVE when user saves it
Your code is pretty close. You want to make sure it's a new entry and not a draft or a revision so you could use:
Event::on(
    Entry::class,
    Entry::EVENT_AFTER_SAVE, static function (ModelEvent $event) {

    /** Entry @entry */
    $entry = $event-&gt;sender;

    /** @var User $user */
    $user = Craft::$app-&gt;getUser();

    if (
        $event-&gt;isNew // Makes sure it's a new entry
        $user-&gt;identity-&gt;isInGroup('cook') &amp;&amp; // Makes sure your user is in the cook group
        !ElementHelper::isDraftOrRevision($entry) &amp;&amp; // Makes it's not a draft or a revision
    ) {  
            $cpUrl = $entry-&gt;cpEditUrl;
            $bodyText = &quot;Dear Admin. /n $userName has created &lt;a href=$cpUrl&gt;$entry&lt;/a&gt;.&quot;;
    }
});