Dnes je mi dobře, ale včera mi bylo špatně kvůli hlavě.

Breakdown of Dnes je mi dobře, ale včera mi bylo špatně kvůli hlavě.

být
to be
ale
but
dnes
today
včera
yesterday
mi
me
dobře
well
kvůli
because of
špatně
badly
hlava
the head
Elon.io is an online learning platform
We have an entire course teaching Czech grammar and vocabulary.

Start learning Czech now

Questions & Answers about Dnes je mi dobře, ale včera mi bylo špatně kvůli hlavě.

Why is it “je mi dobře” and not something like “jsem dobře” for “I feel good”?

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”
    • jeit is
    • mito me (dative)
    • dobřewell

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”)

Why is it “mi” and not “já” or “mě”?

Mi is the dative form of “I”, and Czech uses the dative for the experiencer in this pattern.

  • – 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 or here would be ungrammatical in this pattern.


Can I also say “Dnes se cítím dobře” or “Dnes se mám dobře”? What’s the difference?

Yes, both are correct, but they’re used a bit differently:

  1. Dnes je mi dobře.

    • Very common, neutral.
    • Focus on your physical/mental state right now.
    • Literally “It is good to me today.”
  2. 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.
  3. 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.

Why is it “dobře” (adverb) and not “dobrý” (adjective)?

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

Similarly, why “špatně” and not “špatný” or “špatno”?
  • š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.

Why is it “bylo” (neuter) in “včera mi bylo špatně”?

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.


Can I move “mi” around? For example, is “Dnes mi je dobře” or “Včera bylo mi špatně” okay?

Word order is flexible, but clitic pronouns like mi obey special rules.

  1. 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.
  2. 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.

What exactly does “kvůli” mean, and which case does it take?

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.”


Why is it just “kvůli hlavě” and not “kvůli mé hlavě” (my 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

Is “kvůli hlavě” really what natives would say for “because of a headache”?

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”.


Could I replace “ale” with “a” or “jenže”? What would change?

Yes, but there are nuance differences:

  1. alebut

    • Simple contrast.
    • Dnes je mi dobře, ale včera mi bylo špatně.
      → Today I feel good, but yesterday I felt bad.
  2. aand

    • 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.
  3. jenžebut, 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.