{"id":679,"date":"2026-08-30T19:26:26","date_gmt":"2026-08-30T11:26:26","guid":{"rendered":"http:\/\/kefir.tw\/en\/milk-kefir-calculator\/"},"modified":"2026-08-30T19:26:26","modified_gmt":"2026-08-30T11:26:26","slug":"milk-kefir-calculator","status":"publish","type":"page","link":"https:\/\/kefir.tw\/en\/milk-kefir-calculator\/","title":{"rendered":"Milk Kefir Grain and Milk Calculator"},"content":{"rendered":"    <div class=\"mkc-language-stack\" data-mkc-language-stack>\n            <section\n        class=\"mkc-wrapper\"\n        id=\"mkc-1-en\"\n        lang=\"en\"\n        data-mkc-calculator\n        data-mkc-language=\"en\"\n        data-no-translation\n        data-no-dynamic-translation\n            >\n        <div class=\"mkc-layout\">\n            <div class=\"mkc-input-panel\">\n                <header class=\"mkc-header\">\n\t\t\t\t\t<h1>Milk Kefir Calculator<\/h1>\n                    <p>This calculator tells you how much milk and how many milk kefir grains to put in your jar.<\/p>\n                <\/header>\n\n                <div class=\"mkc-beginner-intro\">\n                    <strong>New to milk kefir?<\/strong>\n                    <p>Kefir grains are small, soft pieces of living culture. They turn milk into kefir. They are not cereal grains.<\/p>\n                    <p>This calculator is for milk kefir grains and dairy milk. Do not use water kefir grains.<\/p>\n                    <p>Have these ready: pasteurized milk, a clean jar, spoon, strainer, clean cloth or coffee filter, and a rubber band.<\/p>\n                <\/div>\n\n                <h3 class=\"mkc-step-title\"><span>1<\/span>Choose your settings<\/h3>\n\n                <div class=\"mkc-control-row\">\n                        <fieldset class=\"mkc-segmented\" data-control=\"unit\">\n        <legend>Units<\/legend>\n        <div class=\"mkc-segmented-track\">\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-unit-metric\"\n                    name=\"mkc-1-en-unit\"\n                    value=\"metric\"\n                     checked='checked'                >\n                <label for=\"mkc-1-en-unit-metric\">\n                    Metric (\u00b0C)                <\/label>\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-unit-imperial\"\n                    name=\"mkc-1-en-unit\"\n                    value=\"imperial\"\n                                    >\n                <label for=\"mkc-1-en-unit-imperial\">\n                    US (\u00b0F)                <\/label>\n                    <\/div>\n    <\/fieldset>\n        <fieldset class=\"mkc-segmented\" data-control=\"input-type\">\n        <legend>What do you want to know?<\/legend>\n        <div class=\"mkc-segmented-track\">\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-input-type-milk_volume\"\n                    name=\"mkc-1-en-input-type\"\n                    value=\"milk_volume\"\n                     checked='checked'                >\n                <label for=\"mkc-1-en-input-type-milk_volume\">\n                    Grains I need                <\/label>\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-input-type-grain_weight\"\n                    name=\"mkc-1-en-input-type\"\n                    value=\"grain_weight\"\n                                    >\n                <label for=\"mkc-1-en-input-type-grain_weight\">\n                    Milk I need                <\/label>\n                    <\/div>\n    <\/fieldset>\n        <fieldset class=\"mkc-segmented\" data-control=\"grain-state\">\n        <legend>Your grains<\/legend>\n        <div class=\"mkc-segmented-track\">\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-grain-state-active\"\n                    name=\"mkc-1-en-grain-state\"\n                    value=\"active\"\n                     checked='checked'                >\n                <label for=\"mkc-1-en-grain-state-active\">\n                    Active                <\/label>\n                                            <input\n                    type=\"radio\"\n                    id=\"mkc-1-en-grain-state-sleepy\"\n                    name=\"mkc-1-en-grain-state\"\n                    value=\"sleepy\"\n                                    >\n                <label for=\"mkc-1-en-grain-state-sleepy\">\n                    Sleepy                <\/label>\n                    <\/div>\n    <\/fieldset>\n                    <\/div>\n\n                <div class=\"mkc-help-box\">\n                    <p>Choose \u201cGrains I need\u201d when you know the milk amount. Choose \u201cMilk I need\u201d when you know the grain amount.<\/p>\n                    <div class=\"mkc-grain-guide\" aria-label=\"What Active and Sleepy mean\">\n                        <p class=\"is-selected\" data-grain-description=\"active\">\n                            <strong>Active<\/strong>\n                            <span>These grains are used often and make kefir normally.<\/span>\n                        <\/p>\n                        <p data-grain-description=\"sleepy\">\n                            <strong>Sleepy<\/strong>\n                            <span>These grains are waking up after shipping, drying, freezing, or a long rest in the fridge. They may work more slowly, so the calculator uses 20% more grains.<\/span>\n                        <\/p>\n                    <\/div>\n                <\/div>\n\n                <div class=\"mkc-sliders\">\n                        <div class=\"mkc-slider-field\" data-slider-field=\"day-temperature\">\n        <div class=\"mkc-slider-heading\">\n            <label for=\"mkc-1-en-day-temperature\">\n                Day temperature            <\/label>\n            <output for=\"mkc-1-en-day-temperature\" data-value-output=\"day-temperature\"><\/output>\n        <\/div>\n                    <p class=\"mkc-slider-help\" data-slider-help=\"day-temperature\">\n                The room temperature during the day where the jar will sit.            <\/p>\n                <div class=\"mkc-range-shell\">\n            <progress class=\"mkc-range-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n            <input\n                class=\"mkc-range\"\n                type=\"range\"\n                id=\"mkc-1-en-day-temperature\"\n                data-slider=\"day-temperature\"\n                min=\"16\"\n                max=\"32\"\n                step=\"0.5\"\n                value=\"25\"\n            >\n        <\/div>\n        <div class=\"mkc-range-endpoints\" aria-hidden=\"true\">\n            <span data-min-output=\"day-temperature\"><\/span>\n            <span data-max-output=\"day-temperature\"><\/span>\n        <\/div>\n    <\/div>\n        <div class=\"mkc-slider-field\" data-slider-field=\"night-temperature\">\n        <div class=\"mkc-slider-heading\">\n            <label for=\"mkc-1-en-night-temperature\">\n                Night temperature            <\/label>\n            <output for=\"mkc-1-en-night-temperature\" data-value-output=\"night-temperature\"><\/output>\n        <\/div>\n                    <p class=\"mkc-slider-help\" data-slider-help=\"night-temperature\">\n                The room temperature at night where the jar will sit.            <\/p>\n                <div class=\"mkc-range-shell\">\n            <progress class=\"mkc-range-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n            <input\n                class=\"mkc-range\"\n                type=\"range\"\n                id=\"mkc-1-en-night-temperature\"\n                data-slider=\"night-temperature\"\n                min=\"16\"\n                max=\"32\"\n                step=\"0.5\"\n                value=\"22\"\n            >\n        <\/div>\n        <div class=\"mkc-range-endpoints\" aria-hidden=\"true\">\n            <span data-min-output=\"night-temperature\"><\/span>\n            <span data-max-output=\"night-temperature\"><\/span>\n        <\/div>\n    <\/div>\n        <div class=\"mkc-slider-field\" data-slider-field=\"milk-temperature\">\n        <div class=\"mkc-slider-heading\">\n            <label for=\"mkc-1-en-milk-temperature\">\n                Milk temperature at start            <\/label>\n            <output for=\"mkc-1-en-milk-temperature\" data-value-output=\"milk-temperature\"><\/output>\n        <\/div>\n                    <p class=\"mkc-slider-help\" data-slider-help=\"milk-temperature\">\n                The temperature of the milk when you add the grains.            <\/p>\n                <div class=\"mkc-range-shell\">\n            <progress class=\"mkc-range-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n            <input\n                class=\"mkc-range\"\n                type=\"range\"\n                id=\"mkc-1-en-milk-temperature\"\n                data-slider=\"milk-temperature\"\n                min=\"3\"\n                max=\"32\"\n                step=\"0.5\"\n                value=\"5\"\n            >\n        <\/div>\n        <div class=\"mkc-range-endpoints\" aria-hidden=\"true\">\n            <span data-min-output=\"milk-temperature\"><\/span>\n            <span data-max-output=\"milk-temperature\"><\/span>\n        <\/div>\n    <\/div>\n    \n                    <div class=\"mkc-temperature-feedback\">\n                        <div class=\"mkc-temperature-context\">\n                            <p class=\"mkc-context-kicker\">About the temperature<\/p>\n                            <p data-temperature-context><\/p>\n                            <p class=\"mkc-beginner-tip\">First-batch tip: start near 18\u201329\u00b0C (65\u201385\u00b0F) and about 24 hours.<\/p>\n                        <\/div>\n                        <div class=\"mkc-input-warnings\" role=\"note\" data-temperature-warnings hidden><\/div>\n                    <\/div>\n\n                        <div class=\"mkc-slider-field\" data-slider-field=\"amount\">\n        <div class=\"mkc-slider-heading\">\n            <label for=\"mkc-1-en-amount\">\n                Milk amount            <\/label>\n            <output for=\"mkc-1-en-amount\" data-value-output=\"amount\"><\/output>\n        <\/div>\n                    <p class=\"mkc-slider-help\" data-slider-help=\"amount\">\n                How much milk you want to ferment.            <\/p>\n                <div class=\"mkc-range-shell\">\n            <progress class=\"mkc-range-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n            <input\n                class=\"mkc-range\"\n                type=\"range\"\n                id=\"mkc-1-en-amount\"\n                data-slider=\"amount\"\n                min=\"0.25\"\n                max=\"5\"\n                step=\"0.05\"\n                value=\"1\"\n            >\n        <\/div>\n        <div class=\"mkc-range-endpoints\" aria-hidden=\"true\">\n            <span data-min-output=\"amount\"><\/span>\n            <span data-max-output=\"amount\"><\/span>\n        <\/div>\n    <\/div>\n        <div class=\"mkc-slider-field\" data-slider-field=\"fermentation-time\">\n        <div class=\"mkc-slider-heading\">\n            <label for=\"mkc-1-en-fermentation-time\">\n                How long to ferment            <\/label>\n            <output for=\"mkc-1-en-fermentation-time\" data-value-output=\"fermentation-time\"><\/output>\n        <\/div>\n                    <p class=\"mkc-slider-help\" data-slider-help=\"fermentation-time\">\n                How long the jar will sit before you strain out the grains. For a first batch, start with 24 hours.            <\/p>\n                <div class=\"mkc-range-shell\">\n            <progress class=\"mkc-range-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n            <input\n                class=\"mkc-range\"\n                type=\"range\"\n                id=\"mkc-1-en-fermentation-time\"\n                data-slider=\"fermentation-time\"\n                min=\"20\"\n                max=\"36\"\n                step=\"1\"\n                value=\"24\"\n            >\n        <\/div>\n        <div class=\"mkc-range-endpoints\" aria-hidden=\"true\">\n            <span data-min-output=\"fermentation-time\"><\/span>\n            <span data-max-output=\"fermentation-time\"><\/span>\n        <\/div>\n    <\/div>\n                    <\/div>\n\n                <footer class=\"mkc-input-footer\">\n                    <button type=\"button\" class=\"mkc-reset\" data-reset>\n                        Start over                    <\/button>\n                    <span>Put all sliders back to the starting values.<\/span>\n                <\/footer>\n            <\/div>\n\n            <aside class=\"mkc-result-panel\" aria-live=\"polite\" aria-atomic=\"true\">\n                <p class=\"mkc-live-label\">\n                    <span class=\"mkc-live-dot\" aria-hidden=\"true\"><\/span>\n                    Step 2: Use these amounts                <\/p>\n\n                <h3 data-result-title>Grains you need<\/h3>\n\n                <div class=\"mkc-result-pair\" data-result-pair>\n                    <div class=\"mkc-result-quantity is-primary is-active-grains\" data-result-quantity=\"grain\">\n                        <div class=\"mkc-result-label-row\">\n                            <span class=\"mkc-result-quantity-label\">Kefir grains<\/span>\n                            <span class=\"mkc-grain-state-badge is-active\" data-result-grain-state>Active<\/span>\n                        <\/div>\n                        <div class=\"mkc-result-value\">\n                            <strong data-result-value data-result-grain-value>\u2014<\/strong>\n                            <span data-result-unit data-result-grain-unit><\/span>\n                        <\/div>\n                    <\/div>\n                    <div class=\"mkc-result-quantity\" data-result-quantity=\"milk\">\n                        <span class=\"mkc-result-quantity-label\">Milk<\/span>\n                        <div class=\"mkc-result-value\">\n                            <strong data-result-milk-value>\u2014<\/strong>\n                            <span data-result-milk-unit><\/span>\n                        <\/div>\n                    <\/div>\n                <\/div>\n                <p class=\"mkc-result-summary\" data-result-summary><\/p>\n\n                <div class=\"mkc-output-block\">\n                    <div class=\"mkc-output-heading\">\n                        <span data-output-label>Change grain amount<\/span>\n                        <small data-output-help>This also changes milk.<\/small>\n                    <\/div>\n                    <div class=\"mkc-output-slider-shell\" data-output-shell>\n                        <output class=\"mkc-output-bubble\" data-output-bubble>\u2014<\/output>\n                        <progress class=\"mkc-range-progress mkc-output-progress\" max=\"100\" value=\"0\" aria-hidden=\"true\"><\/progress>\n                        <input\n                            class=\"mkc-range mkc-result-range\"\n                            type=\"range\"\n                            min=\"0\"\n                            max=\"100\"\n                            value=\"0\"\n                            step=\"1\"\n                            aria-label=\"Change grain amount. This also changes milk.\"\n                            data-result-slider\n                        >\n                    <\/div>\n                    <div class=\"mkc-range-endpoints mkc-output-endpoints\" aria-hidden=\"true\">\n                        <span data-output-min>0<\/span>\n                        <span data-output-max>\u2014<\/span>\n                    <\/div>\n                    <p>Both amounts always change together.<\/p>\n                <\/div>\n\n                <section class=\"mkc-next-steps\">\n                    <h4><span>3<\/span>Make your kefir<\/h4>\n                    <ol>\n                        <li>Wash your hands. Wash and rinse the jar, spoon, and strainer. Use a clean cover.<\/li>\n                        <li>\n                            Put                            <strong><span data-guide-grain-value>\u2014<\/span> <span data-guide-grain-unit><\/span> <span data-guide-grain-state>active<\/span> milk kefir grains<\/strong>\n                            in the clean jar.                        <\/li>\n                        <li>\n                            Add                            <strong><span data-guide-milk-value>\u2014<\/span> <span data-guide-milk-unit><\/span> of pasteurized milk<\/strong>Stir gently.                        <\/li>\n                        <li>Cover the jar with a clean cloth or coffee filter. Hold it in place with a rubber band. Keep the jar out of direct sunlight.<\/li>\n                        <li>\n                            Leave it for                            <strong><span data-guide-hours>24<\/span> hours<\/strong>\n                            It is usually ready when it is a little thicker and smells clean and sour.                        <\/li>\n                        <li>Pour the kefir through the strainer. Keep the grains for your next batch. Put the finished kefir in the fridge.<\/li>\n                    <\/ol>\n                    <div class=\"mkc-normal-note\">\n                        <strong>What is normal<\/strong>\n                        <p>Kefir usually becomes a little thicker and smells clean and sour. A yellow liquid called whey may separate. You can stir it back in or strain it off.<\/p>\n                    <\/div>\n                <\/section>\n\n                <div class=\"mkc-error-message\" role=\"alert\" data-error hidden><\/div>\n\n                <div class=\"mkc-safety-note\">\n                    <strong>Safety first<\/strong>\n                    <p>Use pasteurized milk and clean tools. If the batch has mold or smells strange, do not taste it. Throw the whole batch away.<\/p>\n                    <p>This calculator is a guide. It cannot tell whether a batch is safe.<\/p>\n                <\/div>\n            <\/aside>\n        <\/div>\n    <\/section>\n        <\/div>\n    \n","protected":false},"excerpt":{"rendered":"","protected":false},"author":0,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-679","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/pages\/679","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/comments?post=679"}],"version-history":[{"count":0,"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/pages\/679\/revisions"}],"wp:attachment":[{"href":"https:\/\/kefir.tw\/en\/wp-json\/wp\/v2\/media?parent=679"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}