Core difference
就 and 才 are both time/condition adverbs that sit before a verb, but they express opposite speaker stances on whether an event happened on time or not. 就 says "sooner, easier, smaller amount than you might expect" — the speaker is surprised at how quickly or effortlessly the thing happened. 才 says "later, harder, larger amount than you might expect" — the speaker is surprised at the delay or the effort. Neither word changes when the event actually happened; they only tell you how the speaker feels about the timing.
Time sentences
With a time expression, 就 implies early and 才 implies late: 他六点就起床了 (he got up as early as 6). 他九点才起床 (he did not get up until 9). Subtle clue: 就 sentences often take 了 (completion), 才 sentences often drop 了 because the delay is the focus. In Chinese primary schools, this pair is taught with exactly this early/late contrast and serves as the canonical example.
她五点就到了。/她五点才到。
Tā wǔ diǎn jiù dào le. / Tā wǔ diǎn cái dào.
She arrived as early as 5 (unusually early). / She did not arrive until 5 (unusually late).
Quantity sentences
就 also means "only a small amount" when paired with a number: 我就吃了一个 (I only ate one — meaning a small amount). 才 pairs with numbers to mean "merely / a pathetic amount": 我才睡了三个小时 (I slept only three hours — complaining). 就 can be neutral or boastful ("only one was enough!"); 才 carries the weight of "not enough" or "disappointingly small".
我就花了十块钱。/我才赚了十块钱。
Wǒ jiù huā le shí kuài qián. / Wǒ cái zhuàn le shí kuài qián.
I spent only 10 yuan (and that was enough). / I earned only 10 yuan (pitiful).
Conditional sentences
In two-clause conditionals, 就 marks the result as happening readily and 才 marks it as being harder to achieve. 只要下雨,我就不去 (as long as it rains, I will not go — easy trigger). 只有付钱才能进去 (only by paying can you enter — hard condition). 只要...就 pairs an easy condition with an easy result. 只有...才 pairs a strict condition with a conditional result. Matching the conditional starter to the correct result adverb is HSK 4/5 territory.
只要你来,我就高兴。/只有你来我才高兴。
Zhǐyào nǐ lái, wǒ jiù gāoxìng. / Zhǐyǒu nǐ lái wǒ cái gāoxìng.
As long as you come, I am happy. / Only if you come am I happy.
了 use pattern
就 readily pairs with 了: 他吃了饭就走了 (he left right after eating). The 了 marks the completed event and 就 adds "promptly". 才 avoids 了 in its delay sense because the focus is on how late, not that it happened: 他八点才来 (he did not come until 8) — adding 了 changes the emphasis. When 才 DOES take 了 it usually carries a "finally" tone: 他终于来了,才知道我走了 (he finally came and only then learned I had left).
Native-speaker instinct
Ask yourself: does the English translation have "as early as / already by then / right away / only (small)"? That maps to 就. Does it have "not until / only then / only (insufficient) / merely"? That maps to 才. If neither fits, you probably do not need either word — a plain time expression is enough. The hardest cases are number-limit sentences where both 就 and 才 can appear with slightly different colour.