Breakdown of Dnes je mi dobře, ale včera mi bylo špatně kvůli hlavě.
Questions & Answers about Dnes je mi dobře, ale včera mi bylo špatně kvůli hlavě.
Czech doesn’t usually say “I am good” for physical/mental state. Instead it uses an impersonal construction:
- je mi dobře = literally “it is good to me”
- je – it is
- mi – to me (dative)
- dobře – well
So the sentence means “there is good-ness to me,” i.e. I feel good.
“Jsem dobře” is simply wrong in Czech; you can’t use být + adverb that way for how you feel. You must use patterns like:
- je mi dobře / špatně
- cítím se dobře / špatně
- mám se dobře (more general, “I’m doing well”)
Mi is the dative form of “I”, and Czech uses the dative for the experiencer in this pattern.
- já – nominative (subject: I)
- mě / mne – accusative or genitive (me)
- mi / mně – dative (to me)
In je mi dobře / bylo mi špatně:
- there is no real subject (“it” is just dummy)
- the person who experiences the state is in dative: mi
So the structure is: [it] is good to me, [it] was bad to me.
Using já or mě here would be ungrammatical in this pattern.
Yes, both are correct, but they’re used a bit differently:
Dnes je mi dobře.
- Very common, neutral.
- Focus on your physical/mental state right now.
- Literally “It is good to me today.”
Dnes se cítím dobře.
- Literally “Today I feel well.”
- Slightly more explicit; emphasizes the subjective feeling.
- Often used in both physical and emotional contexts.
Dnes se mám dobře.
- Literally “Today I have myself well.”
- More like “I’m doing well today / Things are good for me today.”
- Can include general life situation (work, money, relationships), not just health.
All three could be used about health, but:
- Talking about a headache, stomachache, flu, etc., “je mi dobře/špatně” or “cítím se dobře/špatně” is more typical.
- “mít se dobře” is broader, more about how life is going.
In this construction (je mi + adverb), Czech normally uses an adverb, not an adjective:
- je mi dobře / špatně / blbě / skvěle…
You’d use adjectives like dobrý when you’re describing a noun:
- Den je dobrý. – The day is good.
- Film je dobrý. – The film is good.
But here, you’re not saying “I am a good person” or “my condition is good” as a noun phrase. It’s an impersonal structure describing how it is to you, so Czech uses an adverb:
- dobře = well
- špatně = badly / poorly
- blbě (colloquial) = crappy / awful
špatně is the normal adverb: badly, poorly.
- Je mi špatně. = I feel bad / I’m unwell.
špatný is the adjective: bad.
- To je špatný film. – That’s a bad film.
špatno is another form used mostly for nausea / about-to-faint feeling:
- Je mi špatno. – Often understood as I feel sick (like I might vomit / faint).
In your sentence, “včera mi bylo špatně” is the normal, general way to say:
- Yesterday I felt bad / I felt unwell.
If you want to stress nausea specifically, you could say:
- Včera mi bylo špatně od žaludku. – I felt sick to my stomach yesterday.
- Včera mi bylo špatno. – I felt sick / I wanted to throw up yesterday.
Bylo is neuter singular because this is an impersonal sentence: there is no real subject like I, he, the day, etc.
Structure:
- Včera mi bylo špatně.
Literally: Yesterday it-was to-me badly.
The “it” is just a dummy subject, like English “it” in “it is raining.” In Czech, such impersonal být (“to be”) usually appears in neuter singular:
- Je mi dobře. / Bylo mi dobře. – I feel/felt good.
- Je zima. – It’s cold.
- Bylo mi špatně. – I felt bad.
You don’t say “včera jsem byl špatně” for how you felt; you stick with the impersonal bylo.
Word order is flexible, but clitic pronouns like mi obey special rules.
Dnes mi je dobře.
- Yes, this is correct and common.
- mi normally goes in “second position” in the clause (after the first stressed element).
- Compare:
- Dnes je mi dobře.
- Dnes mi je dobře. Both are fine; the difference is very small. Intonation and emphasis might change slightly.
Včera bylo mi špatně.
- This sounds odd / foreign.
- Native speakers strongly prefer:
- Včera mi bylo špatně. Here včera is the first stressed word, so mi wants to come right after it.
Very unnatural positions:
- Mi včera bylo špatně. (except in special emphasis situations)
- Dobře je mi dnes. – possible but very unusual, poetic/emphatic style.
So as a learner, stick to:
- [Time] + mi + bylo/je + dobře/špatně
e.g. Včera mi bylo špatně. Dnes je mi dobře.
Kvůli means roughly:
- “because of, due to, on account of”
Grammar:
- kvůli + dative case
Examples:
- kvůli práci – because of (my) work
- kvůli dětem – because of the children
- kvůli počasí – because of the weather
- kvůli hlavě – because of (my) head
In your sentence:
- hlava (nom.) → hlavě (dative, singular)
- kvůli hlavě = because of (my) head → i.e. because my head hurt / I had a headache
So “kvůli hlavě” is literally “due to the head.”
In Czech, body parts are often used without a possessive pronoun, because it’s automatically understood whose body it is from context.
So:
- kvůli hlavě
is normally understood as
→ kvůli mé hlavě (because of my head).
Similarly:
- Bolí mě hlava. – My head hurts.
(literally: The head hurts me.) - Zlomil jsem si ruku. – I broke my arm.
(literally: I broke to-myself the arm.)
You can say kvůli mé hlavě or kvůli mojí hlavě, but in this context it sounds a bit unusual, as if you want to emphasize my head in contrast to someone else’s.
More natural variants for a headache:
- kvůli bolesti hlavy – because of a headache
- protože mě bolela hlava – because my head hurt
Kvůli hlavě is understandable and not wrong, but it’s a bit elliptical / colloquial. A typical native speaker would more naturally say:
- Dnes je mi dobře, ale včera mi bylo špatně, protože mě bolela hlava.
– Today I feel good, but yesterday I felt bad because my head hurt.
or:
- …ale včera mi bylo špatně kvůli bolesti hlavy.
– …but yesterday I felt bad because of a headache.
Other natural options:
- …protože jsem měl(a) bolest hlavy. – because I had a headache
- …kvůli migréně. – because of a migraine
Kvůli hlavě is okay if the context is clear, but for teaching materials, I’d usually prefer “protože mě bolela hlava” or “kvůli bolesti hlavy”.
Yes, but there are nuance differences:
ale – but
- Simple contrast.
- Dnes je mi dobře, ale včera mi bylo špatně.
→ Today I feel good, but yesterday I felt bad.
a – and
- Just linking, weaker contrast; sounds more neutral or narrative:
- Dnes je mi dobře a včera mi bylo špatně.
→ Today I feel good, and yesterday I felt bad. - This is grammatical, but many speakers would naturally choose ale here, because the ideas contrast.
jenže – but, except that, only that
- Stronger, often introduces an obstacle or problem:
- Dnes je mi dobře, jenže včera mi bylo špatně.
→ Today I feel good, but the problem is that yesterday I felt bad. - Feels more like: “yeah, today is fine, but (unfortunately) yesterday wasn’t.”
In your original sentence, ale is the most neutral and typical choice.