Chunking is usually decided early and by convenience: a round number of tokens that fits comfortably in the vector store. But the chunk is the unit you retrieve, and the unit you retrieve is the unit the model reasons over.
Too small loses the answer
A short chunk matches a query sharply, but it often holds the sentence that names the concept and not the sentence that explains it. The model then answers from a fragment.
Too large drowns the answer
A long chunk contains the explanation, but its embedding averages over everything else in it. It ranks lower for specific questions, and when it is retrieved it spends the context window on text that does not help.
Size from the questions
Write down twenty real questions and the passage that answers each one. Measure those passages. That distribution, not the database, tells you where to start.