How to limit number of entries to a given user/user group
You might want to take a look at this 

Your condition will be 

$author = Craft::$app-&gt;getUsers()-&gt;getIdentity();
$numberOfEntriesByUser = Entry::find()-&gt;sectionId($entry-&gt;getSection()-&gt;id)-&gt;authorId($author-&gt;id)-&gt;count();
if($numberOfEntriesByUser){
    $event-&gt;isValid = false 
} 


You should make sure the author is not an admin or Craft::$app-&gt;getRequest()-&gt;getIsCpRequest() is false otherwise you won't be able to save new entries as well. 

Keep in mind to check for a current user as well. There won't be a user for cronjobs / other public post request