Quick answer
говори́ть (imperfective) = to speak, to talk, to say — the activity, repeated or ongoing.
сказа́ть (perfective) = to say one specific thing, once, with a result.
Он говори́т по-ру́сски. — Он сказа́л «да».
He speaks Russian. — He said “yes”.
говори́ть
imperfective — the process
- Speaking a language
- Talking, chatting, in general
- Repeated or habitual
- In progress right now
Мы говори́ли час.We talked for an hour.
сказа́ть
perfective — the result
- One specific statement
- Done and complete
- Polite “tell me…”
- A promise about the future
Он сказа́л, что придёт.He said he would come.
What aspect actually is
Almost every Russian verb exists twice: an imperfective form that looks at an action as a process, and a perfective form that looks at it as one completed whole. English does something similar with “I was writing” and “I wrote” — Russian just does it with two different verbs.
говори́ть
A stretch of time — the talking itself.
сказа́ть
One point — the thing got said.
Both verbs, conjugated
| Person | говори́ть · present | сказа́ть · future |
|---|---|---|
| я | говорю́ | скажу́ |
| ты | говори́шь | ска́жешь |
| он / она́ | говори́т | ска́жет |
| мы | говори́м | ска́жем |
| вы | говори́те | ска́жете |
| они́ | говоря́т | ска́жут |
A perfective verb has no present tense. Its “present” forms mean the future: скажу́ = I will say. The stress in сказа́ть jumps from the ending (скажу́) to the stem (ска́жешь) — one more reason we mark it.
| говори́ть | сказа́ть | |
|---|---|---|
| past (he / she / they) | говори́л / говори́ла / говори́ли | сказа́л / сказа́ла / сказа́ли |
| future | бу́ду говори́ть | скажу́ |
| imperative | говори́(те)! | скажи́(те)! |
Side by side
The question that decides it
Ask: do I care about the talking, or about what got said? Talking → говори́ть. What got said → сказа́ть. Languages, conversations, habits are always about the talking.
A third one: поговори́ть
Поговори́ть is also perfective and means “to have a talk”, a limited conversation: Нам ну́жно поговори́ть. — We need to talk. So говори́ть has two partners, depending on whether you mean “say” or “chat for a while”.
Typical mistakes
Я скажу́ по-ру́сски.
Я говорю́ по-ру́сски.
Я скажу́ по-ру́сски means “I will say it in Russian” — once, in the future.
Говори́те, где метро́?
Скажи́те, где метро́?
You want one answer, not a speech. Asking directions is always скажи́те.
Я говори́л ему́ «спаси́бо» (once)
Я сказа́л ему́ «спаси́бо».
A single “thank you” is a result — perfective.
Check yourself
Вы ___ по-англи́йски? — Do you speak English?