Script loading

It sometimes might happen that Clerk doesn't successfully load and initialize during page rendering. This could happen for a myriad of reasons, including but not limited to:

  • You have no internet connection
  • The CDN which is used for the ClerkJS script is offline or blocked
  • Another script is colliding with Clerk
  • Missing or invalid Publishable key

Check your internet access and that e.g. no Ad-Blocker is blocking Clerk's scripts.

If Clerk stops working after you've added another script (e.g. through a React component), you can try delaying the loading of that other script. For example, to only mount @monaco-editor/react after Clerk loaded you can use the useClerk() hook:

import { Editor } from "@monaco-editor/react";
import { useClerk } from "@clerk/nextjs";

export default function Home() {
  const clerk = useClerk()
  return (
      {clerk.loaded && <Editor />}


What did you think of this content?