In Habitify, a habit is any behavior you do regularly - often without much conscious thought - from something as simple as drinking water to a fuller routine like a daily workout.A Good Habit is one that moves you toward a better version of yourself: more productive, healthier, or simply more at peace. This article covers everything you need to know to work with Good Habits in Habitify - from adding one, to tracking your daily progress.
iOS
🤖 Android
🖥️ Website & Desktop
How to create a good habit
In Habitify iOS app, access Journal tab.
Tap on + button at the bottom right corner, then choose Build Good Habit.
Choose a pre-defined habit template, or tap Custom Habit to build a new one from scratch.
Configure the details about Repeat, Goal, Reminders, etc., of your new habit.
When everything is set, tap check (✓) button in the top right corner to save the new habit to your list and start tracking
Details of a good habit
Repeat
Configuring Repeat is to schedule the habit shows up in the Journal.For habit with goal per day, it also define which days count toward your streak and your completion score.
Mode
How it works
Example
Weekly
Appears every single day or specific day(s) in a week
Everyday
Mon, Wed, and Fri
Weekends (Sun, Sat)
Monthly
Repeats on one or more specific date(s) of the month
The 2nd of the month
The 15th and 30th of the month
Interval
Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates
Every 2 days
Every 7 days
Goal
Goal is the minimum target that defines “success” for a given period. Configure three parts:
Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)
Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)
Period: set a standard period for achieving the goal, as well as the reset frequency: per day, per week, per month, or per year
There are 2 modes in settings the goal value. In the screen of setting goal, tap the ••• button in top right corner and choose between:
Quick Select: scroll the value picker and choose a pre-defined one.
Exact Value: enter any custom value you want.
Editing the custome unit might affect the past data
If you rename bottles to glasses, all historical logs display the new label too. Be aware of this especially when you review your data.
Unit type can't change after saving.
You can switch within the same type (minutes → hour), but not across types (minutes → km). Changing type requires creating a new habit
Time of Day
Time of Day is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like ‘Morning’, ‘Afternoon’, ‘Evening’, ‘Night’, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.
There must be at least 1 Time of Day selected
A good habit must be assigned to at least 1 Time of Day. You can choose to assign it to multiple times of day.
Time of Day is purely for organizing & filtering your list.
This setting is related to the Time of Day area in Journal where your habits are automatically filtered based on the current time.
Area
An Area is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.As your habit list grows, areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.
Reminders
Setting Reminders is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.In Habitify, there are three types of reminders:
Time reminder: set a specific time; add multiple reminders per habit (e.g., drink water at 8AM, 10AM, et.,)
Location reminder: triggers on arriving at or leaving a set location (e.g., gym when arriving home).
Habit Stacking: triggers based on completion of another habit (e.g., “Journal” reminder fires immediately when “Read a Book” is marked as completed).
Checklist
Some habits are more than just a single action; they’re a collection of smaller steps. Checklist let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.To add a new item in the habit’s checklist:
In the New Habit screen, tap to access Checklist.
Tap on the input field of new item, enter the task name
Tap the ✔ or Done button on the keyboard to confirm the entry.
Habitify does not support to directly edit or change the order of items in the Checklist.
The item you add first will come first. The current solution is to remove the items and re-add them in the order you may want them to be sorted.
Start Date
The date you set in Start Date is the date your habit starts showing up in the Journal. It defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.
Possible consequence when you change Start Date of an existing habit
If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.
End
The End setting allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.There are four ways to set an end point for your habit:
Type
Ends when…
Example
Required
On a Date
A specific calendar date is reached
ends on December 31, 2026
At least 7 days since Today
After a Streak
A target number of consecutive periods is hit
ends after a 100-day streak
Must be greater than current streak
After Total Completions
A target number of completed periods is reached (non-consecutive allowed)
ends after 50 successful days
Must be greater than current total completions
By Total Amount
Cumulative logged value hits a target
ends after 10,000 total pages logged
Must be greater than current total amount
How a good habit shows in the list
In the Week view of Journal, your habit will appear immediately, with the progress represented based on their goal.In the Day view, whether a habit appears in the All Habits list, the Time of Day list, or a custom Area list is based on the settings of Repeat and Start Date.Where a good habit lands in within each list in the view depends on its goal type:
Good habits with a daily goal sit on the top of the list
Good habits with a weekly, monthly, or yearly goal are categorized followingly to the section this week, this month, or this year.
Like any habit, once it’s checked in for the day, it moves into the Completed, Skipped, or Failed groups depending on the outcome, keeping what’s still open clearly separate from what’s already resolved.
How to record progress of a good habit
There are 4 options of recording the progress of a good habit:
Log: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.
Complete: Enter a value that is equal to the goal, and set the current period as complete.
Skip: Set the current day as skip when you want to take a day off, this way can help you protect your current daily-based streak.
Fail: Set the current day as fail when you consider it as a slip, and please be noted that this will break your streak.
Logging progress in Day view
When you are using the Habitify iOS, the Journal tab is the main place of your daily tracking on. From Journal, these are the ways to record your progress on a habit:
Use smart button which is on the left to each habit.
Swipe right to access the option Complete or Log.
Swipe left to access the option Skip or Fail.
Smart buttons
For each habit, there is a quick button to log the entry for the habit progress:
+ 1 for habit with goal tracked in unit “time(s)”.
⏱️ for habits with duration-based goal
⌨️ for habits with goal in other units (e.g., km, kcal, g, etc.,)
Right Swipe
When swiping right, you have the Completion option to immediately mark your good habit as completed as well as log the goal value as your progress value for the current period.Otherwise, you can use Log to record any progress value. For this option, you can choose between 2 modes of updating the current progress:
Add: the value you enter will add up to the current progress value. e.g., current progress is “2km” and you add “3km”, then the progress is updated to”5km”.
Set: the value you enter will be the updated current progress value. e.g., current progress is “2km” and you set “3km”, then the progress is updated to “3km”.
Left Swipe
By swiping the habit left, you also have the option to mark your habit as “Failed” or “Skipped”.
Fail option is to mark the day when you plan to do your habit but you cannot, be aware that this option will break your current streak if your habit has a goal per day.
Skip option is for the day when you don’t schedule your habit, maybe you’re sick or on holiday and temporarily put your habit on a pause.
Manual check-in is not supported for habits syncing data from Health apps
For habits that link and sync data from Apple Health, Fitbit, or Strava, Habitify does not support to manually log progress or mark the habit as complete in any way within the app. However, you still can mark those habits as skipped or failed.
Logging progress in Week view
In Week view of Journal, you record progress by interacting with each habit’s row.To record progress on a habit with daily goal,
Tap the cell of the day you want to check in, on which the habit is scheduled to repeat.
If the habit’s goal is measured in times, each tap adds 1 to your progress.
If the goal uses any other unit, a tap opens the Log screen.
Hold on the cell of that day to access the Skip or Fail options.
To record progress on a the habits with weekly, monthly, or annual goal,
Tap on the habit’s stripe to open the Log screen.
The stripe fills as you log and shows your total progress toward the goal.
FAQs
How can I mark a whole week or a whole month as Skipped to protect my streak?
Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.The Skip function is deliberately designed to handle short-term, daily unpredictability, like waking up sick or having an unexpected emergency, so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.
How to undo a wrong progress log?
If your habit is updated with a status (Completed, Skipped, Failed), from Journal, find the habit and tap the ↩ button next to it.if your habit is still in progress:
From Journal, tap on the habit to open its single progress view.
Tap the ••• button in the top right corner.
Choose Log History.
In the Log History, swipe left the wrong log, and choose Delete.
Tap the turn-back button to save and return.
How to edit a good habit?
To edit a good habit:
From Journal, tap on the habit to open its single progress view.
Tap Edit in the top right corner.
If your habit does not appear in the today’s list:
Go to Settings.
Tap All Habits.
Tap on the habit, and choose Edit.
How to create a good habit
In the Habitify Android app, access the Journal tab.
Tap the + button near the bottom right corner, then choose Create Good Habit.
Choose a pre-defined habit template, or tap Create Your Own to build from scratch.
Fill in the details of your habit, such as Goal and Reminders. For each change, remember to tap ← to save change and go back.
Once everything is set, tap the Save button to confirm the new habit to your list.
Details of a good habit
Repeat
Configuring Repeat is to schedule the habit shows up in Journal.For habit with goal per day, it also define which days count toward your streak and your completion score.
Mode
How it works
Example
Daily
Appears every single day or specific day(s) in a week
Everyday
Mon, Wed, and Fri
Weekends (Sun, Sat)
Monthly
Repeats on one or more specific date(s) of the month
The 2nd of the month
The 15th and 30th of the month
Interval
Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates
Every 2 days
Every 7 days
Goal
Goal is the minimum target that defines “success” for a given period. Configure three parts:
Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)
Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)
Period: per day, per week, per month, or per year
There are 2 modes in settings the goal value. In the screen of setting goal, tap the ••• button in top right corner and choose between:
Quick Select: scroll the value picker and choose a pre-defined one.
Exact Value: enter any custom value you want.
Unit type can’t change after saving.
You can switch within the same type (minutes → hours), but not across types (minutes → km). Changing type requires creating a new habit.
Editing a custom unit’s label rewrites past data.
If you rename “bottles” to “glasses,” all historical logs display the new label too. Be aware especially when you do the review on your past data in this case.
Time of Day
Time of Day is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like morning, afternoon, evening, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.
There must be at least 1 Time of Day selected.
A good habit must be assigned to at least 1 Time of Day. You can choose all options of Time of Day so your habit appears all day long in the Time of Day list.
Time of Day is purely for organizing your list into sections.
This setting is related to the Time of Day area in Journal where your habits are automatically filtered based on the current time.
Area
An Area is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.As your habit list grows, Areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.
Reminders
Setting a Reminder is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.In Habitify, there are three types of reminders:
Time: set a specific time; add multiple reminders per habit (e.g., drink water at 8AM, 10AM, et.,)
Location: triggers on arriving at or leaving a set location (e.g., gym when arriving home).
Habit Stacking: triggers based on completion of another habit (e.g., “Journal” reminder fires immediately when “Read a Book” is marked as completed).
Checklist
Some habits are more than just a single action; they’re a collection of smaller steps. Checklist let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.To add a new item in the habit’s checklist:
In the screen to set up a habit, scroll down to Checklist.
Tap Add More.
Enter an item, then tap Save.
Repeat the steps to add the other.
Habitify does not support to directly edit or change the order of items in the Checklist.
The item you add first will come first. The current solution is to remove the items and re-add them in the order you may want them to be sorted.
Start Date
The date you set in Start Date is the date your habit starts showing up in the Journal or List view. It defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.
Possible consequence when you change Start Date of an existing habit
If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.
End Condition
End Condition allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.There are four ways to set an end point for your habit:
Type
Ends when…
Example
Required
On a Date
A specific calendar date is reached
ends on December 31, 2026
At least 7 days since Today
After a Streak
A target number of consecutive periods is hit
ends after a 100-day streak
Must be greater than current streak
After Total Completions
A target number of completed periods is reached (non-consecutive allowed)
ends after 50 successful days
Must be greater than current total completions
By Total Amount
Cumulative logged value hits a target
ends after 10,000 total pages logged
Must be greater than current total amount
How a good habit shows in Journal
In the Day view, whether a habit appears in the All Habit list, the Time of Day list, or a custom Area list is based on the settings of Repeat and Start Date.In the Week view, your habit will appear immediately, with the progress represented based on their goal.
How to record progress of a good habit
There are 4 options of recording the progress of a good habit:
Log value: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.
Complete: Enter a value that is equal to the goal, and set the current period as complete.
Skip: Set the current day as skip when you want to take a day off, this way can help you protect your current daily-based streak.
Fail: Set the current day as fail when you consider it as a slip, and please be noted that this will break your streak.
When you are using the Habitify Android, the Journal tab is the main place of your daily tracking.
Logging progress in Day view
In Day view, these are the ways to record your progress on a habit:
Use smart button which is on the left to each habit.
Swipe right to access the option Complete or Log Value.
Swipe left to access the button Skip or Fail.
Smart buttons
For each habit, there is a quick button to log the entry for the habit progress:
✓ button for habit with goal = 1 time
+ 1 button for habit with goal = x times ( x > 1)
⏱️ button for habits with duration-based goal
╋ button for habits with goal in other units (e.g., km, kcal, g, etc.,)
Right Swipe
When swiping right, you have the the Complete option to immediately mark your good habit as completed as well as log the goal value as your progress value for the current period.Otherwise, you can use Log Value to add any value to your habit progress. e.g., current progress is “2km” and you add “3km”, then the progress is updated to”5km”.
Left Swipe
By swiping the habit left, you also have the option to mark your habit as “Failed” or “Skipped”.
Fail is to mark the day when you plan to do your habit but you cannot, be aware that this option will break your current streak if your habit has a goal per day.
Skip is for the day when you don’t schedule your habit, maybe you’re sick or on holiday and temporarily put your habit on a pause.
Manual check-in is not supported for habits syncing data from Health apps
For habits that link and sync data from Health Connect, Fitbit, or Strava, Habitify does not support to manually log progress or mark the habit as complete in any way within the app. However, you still can mark those habits as skipped or failed.
Logging progress in Week view
In Week View, you record progress directly on each habit’s row.
To record progress on a habit with daily goal:
Tap the cell of the day you want to check in, on which the habit is scheduled to repeat.
If the habit’s goal is measured in times, each tap adds 1 to your progress.
If the goal uses any other unit, a tap opens the Log Value screen.
Hold on the cell of that day to mark the day with Skip or Fail.
To record progress on a the habits with weekly, monthly, or annual goal:
Tap on a cell or the progress stripe to open the Log Value screen.
The stripe fills as you log and shows your total progress toward the goal.
FAQs
How can I mark a whole week or a whole month as Skip and protect my streak?
Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.The Skip function is deliberately designed to handle short-term, daily unpredictability, like waking up sick or having an unexpected emergency, so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.
How to undo a wrong progress log on a good habit?
If your habit is updated with a status (Completed, Skipped, Failed), from Journal, swipe it right to unmark the status and choose to reset the current day’s progress.if your habit is still in progress:
From Journal, tap on the habit to open its single progress view.
Tap the ⋮ button in the top right corner.
Choose Log History
In the Log History, swipe left the wrong log, and choose Delete.
Tap the turn-back button to save and return.
How to edit a good habit?
If your good habit appears in Journal:
Tap on your habit to open its single progress view.
Tap the ⫶ button in the top right corner.
Choose Edit.
If your good habit doesn’t appear in Journal:
Go to Settings.
Tap Manage Habits.
Press and hold on a habit, choose Edit.
How to create a good habit
From the left navigation bar, access the All Habits tab.
Navigate to the bottom action bar, click + Add Habit, then choose Create Good Habit.
Click the name field and choose one from the pre-defined habit template. Or simply enter the name of your own habit, and start with a scratch.
Configure the detailed settings.
Once everything is set, click the Save button at the bottom right corner to save the new habit to your tracking list
Details of a good habit
Repeat
Configuring Repeat is to schedule the habit shows up in the List View.For habit with goal per day, it also define which days count toward your streak and your completion score.
Mode
How it works
Example
Daily
Appears specific day(s) in a week or every single day.
Everyday
Mon, Wed, and Fri
Weekends (Sun, Sat)
Monthly
Repeats on one or more specific date(s) of the month
The 2nd of the month
The 15th and 30th of the month
Interval
Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates
Every 2 days
Every 7 days
Goal
Goal is the minimum target that defines “success” for a given period. Configure three parts:
Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)
Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)
Period: per day, per week, per month, or per year
Unit type can’t change after saving. You can switch within the same type (minutes → hours), but not across types (minutes → km). Changing type requires creating a new habit.
Editing a custom unit’s label rewrites past data. If you rename “bottles” to “glasses,” all historical logs display the new label too.
Time of Day
Time of Day is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like ‘Morning’, ‘Afternoon’, ‘Evening’, ‘Night’, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.
There must be at least 1 Time of Day selected. You can choose all options of Time of Day so your habit appears all day long in the Time of Day list.
Time of Day is purely for organizing your list into sections. A Reminder is a specific push notification that alerts you at an exact time (e.g., 8:00 AM). You can have a “Morning” habit with a reminder set for 8:00 AM.
Start Date
The date you set in Start Date is the date your habit starts showing up when you view your habits in the List layout.In the Grid layout, Start Date determines the cell from which you can interact and check in. The cells of the date before your habit’s start date will be crossed out and unavailable to click on.The Start Date’s value defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.
If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.
End Condition
End Condition allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.There are four ways to set an end point for your habit:
Type
Ends when…
Example
Required
On a Date
A specific calendar date is reached
ends on December 31, 2026
At least 7 days since Today
After a Streak
A target number of consecutive periods is hit
ends after a 100-day streak
Must be greater than current streak
After Total Completions
A target number of completed periods is reached (non-consecutive allowed)
ends after 50 successful days
Must be greater than current total completions
By Total Amount
Cumulative logged value hits a target
ends after 10,000 total pages logged
Must be greater than current total amount
Reminders
Setting a Reminder is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.In Habitify, there are three types of reminders: Time, Location, and Habit Stacking. How to set up each type of reminder as below.
Time Reminder
Location Reminder
Habit Stacking Reminder
Click the Reminder field.
Choose type Time.
Enter the time and set AM/PM.
Optionally, switch to enable the Custom Schedule and choose the specific day(s) when the reminder is set for.
Click Done to add the new reminder.
Click the Reminder field.
Choose type Location.
Search for the based location, and choose the correct one from the result list.
Adjust the distance to the based location where the app should fire the reminder.
Choose between Entering and Leaving.
Click Done to add the new reminder.
Click the Reminder field.
Choose type Habit Stacking.
In Remind me to when, choose the triggering habit.
In Triggering event, choose the triggering status or the reminders of the triggering habits.
In Send notification, choose when you want to receive the reminder in the correlation with the triggering event.
Click Done to add the new reminder.
Area
An Area is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.As your habit list grows, Areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.
Checklist
Some habits are more than just a single action; they’re a collection of smaller steps.Checklist let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.To add a new item in the habit’s checklist:
In the New Habit window, find Checklist, and click the input field.
Add the items, seperate each team by Enter from your keyboard.
How a good habit shows in the list
In List layout, whether a habit appears in All Habits list, Time of Day list, or a custom Area list is based on the settings of Repeat and Start Date.For example, if your habit has Start Date as2026-07-01 and Repeat asevery 2 days , then it will appear in the list of date2026-07-01,2026-07-03,2026-07-05,etc.In Grid layout, all the habits you are actively tracking appears, regardless of their Repeat and Star Date settings. For days before the start date, their cells will be crossed off.
How to record progress of a good habit
There are 4 options of recording the progress of a good habit:
Add log: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.
Complete or Mark as completed: Enter a value that is equal to the goal, and set the current period as complete.
Skip or Mark as skipped: Set the current day as skip.
Fail or Mark as failed: Set the current day as fail.
Difference between ‘skip’ and ‘fail’
Skip: use it when it is a day off, and you want to protect your daily-based streak
Fail: use it when you should complete the habit but you miss it.
Skip doesn’t protect weekly-based, monthly-based, or annual-based streak. Once you do not complete your weekly/monthly/annual goal, your current streak will reset to 0.
Based on whether you are viewing the Grid or List layout, these are the ways to track your habit progress
Tracking in Grid view
Grid view gives you a calendar-like overview of your habits. Each cell in the grid represents a single day for a habit. Consequently, you can check in a single day and several days in bulk.To check in status or log progress for a single day:
Click to Select: Click on any cell (day). An action bar will appear at the bottom. Choose from Complete, Skip, or Fail.
Right-Click for Speed: Right-click on any cell. An action menu will appear. Choose the action you want from the list.
Use keyboard shortcuts Choose a cell and use one of these keyboard shortcuts
for macOS users: Option + C (to complete), Option + S (to skip), or Option + F (to fail)
for windows users: Alt + C (to complete), Alt + S (to skip), or Alt + F (to fail)
To check in status or log progress for multiple days:
For specific, non-consecutive days: Hold down Ctrl (on Windows) or Cmd (on Mac) and click on all the individual cells you want to update. Then, choose an action from the bottom bar or use the keyboard shortcuts.
For a consecutive range of days: Click and hold on a cell, then drag your mouse across the nearby cells to select a range. Release the mouse and choose an action from the bottom bar or use the keyboard shortcuts.
Checking in multiple days is only available for habits with goal per day.
Tracking in List view
List view provides a simple, focused list of your habits for a specific day. Here’s how you can check in or log progress value of your habit:
Add Log: hover your mouse over a habit, an input field will appear, type a value in the box and press ‘Enter’ on your keyboard or click ☑ to save.
Select & mark: click on a habit, then choose Complete, Skip, or Fail from the action bar at the bottom of the view.
Select from action menu: right-click a habit, or hover on the habit and click the 3-dot menu button near the end, to get the action menu.
FAQs
How to skip a week, month, or year?
Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.The Skip function is deliberately designed to handle short-term, daily unpredictability—like waking up sick or having an unexpected emergency—so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.
How to undo a progress log on a good habit?
If the habit is marked with a status (Completed, Skipped, or Failed), right-click the cell and choose Remove logs.If the habit is still in progress:
Open its single progress view.
Navigate to the top right corner, and click the sidebar toggle button.
Switch to the Log History tab.
Select the wrong log.
Click Delete in the bottom right corner.
How to edit a good habit?
To edit a good habit:
Open your habit list in Grid layout.
Click on your habit to open its single progress view.
Navigate to the top right corner, and click the 🖊 button.
Was this page helpful?
{"docsConfig":{"theme":"aspen","$schema":"https://mintlify.com/docs.json","name":"Habitify","description":"This is the official knowledge base of Habitify, the habit tracker app for iOS, Android, desktop, and web. Find step-by-step guides on creating and tracking your habits, setting up integrations and automations for advanced tracking, and exploring Habitify's AI features, including Habitify MCP, Habi AI, and Siri AI-supported.","colors":{"primary":"#164AF2","light":"#164AF2","dark":"#1D45C9"},"logo":{"light":"https://mintcdn.com/habitify/6ubuIYTR9HqwJmST/images/Group3.png?fit=max\u0026auto=format\u0026n=6ubuIYTR9HqwJmST\u0026q=85\u0026s=19d2ca75b3476d732425d7ae3a079d41","dark":"https://mintcdn.com/habitify/79szqEEvHCts8PIA/images/Group1.png?fit=max\u0026auto=format\u0026n=79szqEEvHCts8PIA\u0026q=85\u0026s=aa244f00b99bdfebc0839912c4fadfbd"},"favicon":{"light":"https://mintcdn.com/habitify/6mDwR9tnCNQh0nLA/images/64-Desktop.png?fit=max\u0026auto=format\u0026n=6mDwR9tnCNQh0nLA\u0026q=85\u0026s=1a92045ea4ab8565691f7db03ebccb55","dark":"https://mintcdn.com/habitify/6mDwR9tnCNQh0nLA/images/64-Desktop.png?fit=max\u0026auto=format\u0026n=6mDwR9tnCNQh0nLA\u0026q=85\u0026s=1a92045ea4ab8565691f7db03ebccb55"},"navbar":{"links":[{"href":"mailto:contact@habitify.me","label":"Contact Us"}],"primary":{"type":"button","label":"Download App","href":"https://habitify.me/download"}},"footer":{"socials":{"x":"https://x.com/usehabitify","instagram":"https://instagram.com/habitify.me","facebook":"https://facebook.com/habitify","website":"https://habitify.me"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"languages":[{"language":"en","href":"habitify-introduction"},{"language":"pt-BR","href":"pt-BR/habitify-introduction"},{"language":"ja","href":"ja/habitify-introduction"},{"language":"es","href":"es/habitify-introduction"},{"language":"vi","href":"vi/habitify-introduction"},{"language":"ru","href":"ru/habitify-introduction"},{"language":"fr","href":"fr/habitify-introduction"},{"language":"ko","href":"ko/habitify-introduction"},{"language":"pl","href":"pl/habitify-introduction"},{"language":"it","href":"it/habitify-introduction"},{"language":"de","href":"de/habitify-introduction"}]}},"deployment":{"deploymentMetadataValue":{"subdomain":"habitify","hasAudioNarration":false,"actualSubdomain":"habitify","customDomains":["docs.habitify.me"],"gitSource":{"type":"github","owner":"unstatic-co","repo":"habitify-public-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"feedback":{"thumbs":true,"issues":false,"edits":false},"entitlements":{},"buildId":"6af6d1266140130b4a1c69e6","clientVersion":"0.0.4143","searchFilterCounts":[{"language":"en","tag":"Documentation","count":43},{"language":"de","tag":"Dokumentation","count":43},{"language":"es","tag":"Documentación","count":43},{"language":"fr","tag":"Documentation","count":43},{"language":"it","tag":"Documentazione","count":43},{"language":"ja","tag":"ドキュメント","count":43},{"language":"ko","tag":"문서","count":43},{"language":"pl","tag":"Dokumentacja","count":43},{"language":"pt-BR","tag":"Documentação","count":43},{"language":"ru","tag":"Документация","count":43},{"language":"vi","tag":"Tài liệu","count":43},{"language":"default","tag":"API","count":24},{"language":"en","tag":"Integration","count":9},{"language":"de","tag":"Integrationen","count":9},{"language":"es","tag":"Integraciones","count":9},{"language":"fr","tag":"Intégrations","count":9},{"language":"it","tag":"Integrazioni","count":9},{"language":"ja","tag":"連携","count":9},{"language":"ko","tag":"연동","count":9},{"language":"pl","tag":"Integracje","count":9},{"language":"pt-BR","tag":"Integrações","count":9},{"language":"ru","tag":"Интеграции","count":9},{"language":"vi","tag":"Tích hợp","count":9},{"language":"en","tag":"Features","count":8},{"language":"de","tag":"Funktionen","count":8},{"language":"es","tag":"Funciones","count":8},{"language":"fr","tag":"Fonctionnalités","count":8},{"language":"it","tag":"Funzionalità","count":8},{"language":"ja","tag":"機能","count":8},{"language":"ko","tag":"기능","count":8},{"language":"pl","tag":"Funkcje","count":8},{"language":"pt-BR","tag":"Recursos","count":8},{"language":"ru","tag":"Функции","count":8},{"language":"vi","tag":"Tính năng","count":8},{"language":"default","tag":"Habits","count":8},{"language":"en","tag":"Tools","count":7},{"language":"de","tag":"Werkzeuge","count":7},{"language":"es","tag":"Herramientas","count":7},{"language":"fr","tag":"Outils","count":7},{"language":"it","tag":"Strumenti","count":7},{"language":"ja","tag":"ツール","count":7},{"language":"ko","tag":"도구","count":7},{"language":"pl","tag":"Narzędzia","count":7},{"language":"pt-BR","tag":"Ferramentas","count":7},{"language":"ru","tag":"Инструменты","count":7},{"language":"vi","tag":"Công cụ","count":7},{"language":"default","tag":"Habit Logs","count":7},{"language":"en","tag":"Plans \u0026 Billing","count":5},{"language":"de","tag":"Tarife \u0026 Abrechnung","count":5},{"language":"es","tag":"Planes y facturación","count":5},{"language":"fr","tag":"Offres et paiements","count":5},{"language":"it","tag":"Piani e pagamenti","count":5},{"language":"ja","tag":"プランと請求","count":5},{"language":"ko","tag":"요금제 및 결제","count":5},{"language":"pl","tag":"Plany i płatności","count":5},{"language":"pt-BR","tag":"Planos e cobrança","count":5},{"language":"ru","tag":"Тарифы и оплата","count":5},{"language":"vi","tag":"Gói dịch vụ \u0026 Thanh toán","count":5},{"language":"default","tag":"Areas","count":5},{"language":"en","tag":"Automation","count":4},{"language":"de","tag":"Automatisierung","count":4},{"language":"es","tag":"Automatización","count":4},{"language":"fr","tag":"Automatisation","count":4},{"language":"it","tag":"Automazione","count":4},{"language":"ja","tag":"自動化","count":4},{"language":"ko","tag":"자동화","count":4},{"language":"pl","tag":"Automatyzacja","count":4},{"language":"pt-BR","tag":"Automação","count":4},{"language":"ru","tag":"Автоматизация","count":4},{"language":"vi","tag":"Tự động hóa","count":4},{"language":"default","tag":"Habit Notes","count":4},{"language":"en","tag":"Get Started","count":3},{"language":"en","tag":"Habitify MCP \u0026 AI","count":3},{"language":"de","tag":"Erste Schritte","count":3},{"language":"de","tag":"Habitify MCP \u0026 AI","count":3},{"language":"es","tag":"Primeros pasos","count":3},{"language":"es","tag":"Habitify MCP e IA","count":3},{"language":"fr","tag":"Bien démarrer","count":3},{"language":"fr","tag":"Habitify MCP et IA","count":3},{"language":"it","tag":"Per iniziare","count":3},{"language":"it","tag":"Habitify MCP e IA","count":3},{"language":"ja","tag":"はじめに","count":3},{"language":"ja","tag":"Habitify MCPとAI","count":3},{"language":"ko","tag":"시작하기","count":3},{"language":"ko","tag":"Habitify MCP 및 AI","count":3},{"language":"pl","tag":"Pierwsze kroki","count":3},{"language":"pl","tag":"Habitify MCP i AI","count":3},{"language":"pt-BR","tag":"Comece aqui","count":3},{"language":"pt-BR","tag":"Habitify MCP e IA","count":3},{"language":"ru","tag":"Начало работы","count":3},{"language":"ru","tag":"Habitify MCP и AI","count":3},{"language":"vi","tag":"Bắt đầu","count":3},{"language":"vi","tag":"Habitify MCP \u0026 AI","count":3},{"language":"en","tag":"App Settings","count":2},{"language":"en","tag":"Account \u0026 Data","count":2},{"language":"de","tag":"App-Einstellungen","count":2},{"language":"de","tag":"Konto \u0026 Daten","count":2},{"language":"es","tag":"Ajustes de la aplicación","count":2},{"language":"es","tag":"Cuenta y datos","count":2},{"language":"fr","tag":"Paramètres de l’application","count":2},{"language":"fr","tag":"Compte et données","count":2},{"language":"it","tag":"Impostazioni dell'app","count":2},{"language":"it","tag":"Account e dati","count":2},{"language":"ja","tag":"アプリ設定","count":2},{"language":"ja","tag":"アカウントとデータ","count":2},{"language":"ko","tag":"앱 설정","count":2},{"language":"ko","tag":"계정 및 데이터","count":2},{"language":"pl","tag":"Ustawienia aplikacji","count":2},{"language":"pl","tag":"Konto i dane","count":2},{"language":"pt-BR","tag":"Configurações do aplicativo","count":2},{"language":"pt-BR","tag":"Conta e dados","count":2},{"language":"ru","tag":"Настройки приложения","count":2},{"language":"ru","tag":"Учетная запись и данные","count":2},{"language":"vi","tag":"Cài đặt ứng dụng","count":2},{"language":"vi","tag":"Tài khoản \u0026 Dữ liệu","count":2}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"good-habits","slug":"/good-habits","pageMetadata":{"title":"Good habits","description":null,"href":"/good-habits"},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={code:`code`,em:`em`,li:`li`,ol:`ol`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{Accordion,Card,Heading,Info,OptimizedFrame,OptimizedImage,Tab,Table,Tabs}=_components;if(!Accordion)_missingMdxReference(`Accordion`,true);if(!Card)_missingMdxReference(`Card`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Info)_missingMdxReference(`Info`,true);if(!OptimizedFrame)_missingMdxReference(`OptimizedFrame`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Tab)_missingMdxReference(`Tab`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tabs)_missingMdxReference(`Tabs`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`In Habitify, a habit is any behavior you do regularly - often without much conscious thought - from something as simple as drinking water to a fuller routine like a daily workout.`}),`\n`,_jsx(_components.p,{children:`A Good Habit is one that moves you toward a better version of yourself: more productive, healthier, or simply more at peace. This article covers everything you need to know to work with Good Habits in Habitify - from adding one, to tracking your daily progress.`}),`\n`,_jsxs(Tabs,{children:[_jsxs(Tab,{title:` iOS`,id:`%EF%A3%BF-ios`,\"data-child-heading-ids\":`[\"how-to-create-a-good-habit\",\"details-of-a-good-habit\",\"repeat\",\"goal\",\"time-of-day\",\"area\",\"reminders\",\"checklist\",\"start-date\",\"end\",\"how-a-good-habit-shows-in-the-list\",\"how-to-record-progress-of-a-good-habit\",\"logging-progress-in-day-view\",\"smart-buttons\",\"right-swipe\",\"left-swipe\",\"logging-progress-in-week-view\",\"faqs\"]`,children:[_jsx(Heading,{level:`2`,id:`how-to-create-a-good-habit`,children:`How to create a good habit`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1Sm2g8KAFHdm67Je7YV6KH6qSpUps2tDN/preview`,width:`640`,height:`360`}),_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`In Habitify iOS app, access `,_jsx(_components.strong,{children:`Journal`}),` tab.`]}),`\n`,_jsxs(_components.li,{children:[`Tap on + button at the bottom right corner, then choose `,_jsx(_components.strong,{children:`Build Good Habit`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Choose a pre-defined habit template, or tap `,_jsx(_components.strong,{children:`Custom Habit`}),` to build a new one from scratch.`]}),`\n`,_jsxs(_components.li,{children:[`Configure the details about `,_jsx(_components.strong,{children:`Repeat`}),`, `,_jsx(_components.strong,{children:`Goal`}),`, `,_jsx(_components.strong,{children:`Reminders`}),`, etc., of your new habit.`]}),`\n`,_jsx(_components.li,{children:`When everything is set, tap check (✓) button in the top right corner to save the new habit to your list and start tracking`}),`\n`]}),_jsx(Heading,{level:`2`,id:`details-of-a-good-habit`,children:`Details of a good habit`}),_jsx(Heading,{level:`3`,id:`repeat`,children:`Repeat`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/13tFVYs9GZiq8q9som3Rx4qHJVOuDOhWt/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Configuring `,_jsx(_components.strong,{children:`Repeat`}),` is to schedule the habit shows up in the Journal.`]}),_jsx(_components.p,{children:`For habit with goal per day, it also define which days count toward your streak and your completion score.`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Mode`}),_jsx(_components.th,{style:{textAlign:`left`},children:`How it works`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Weekly`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Appears every single day or specific day(s) in a week`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Everyday`}),_jsx(`li`,{children:`Mon, Wed, and Fri`}),_jsx(`li`,{children:`Weekends (Sun, Sat)`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Monthly`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats on one or more specific date(s) of the month`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`The 2nd of the month`}),_jsx(`li`,{children:`The 15th and 30th of the month`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Interval`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Every 2 days`}),_jsx(`li`,{children:`Every 7 days`})]})})]})]})]}),_jsx(Heading,{level:`3`,id:`goal`,children:`Goal`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1kEg-ORk6bbUY6V2KO90NtbxaNJ9m3-kx/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Goal`}),` is the minimum target that defines “success” for a given period. Configure three parts:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)`}),`\n`,_jsx(_components.li,{children:`Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)`}),`\n`,_jsx(_components.li,{children:`Period: set a standard period for achieving the goal, as well as the reset frequency: per day, per week, per month, or per year`}),`\n`]}),_jsx(_components.p,{children:`There are 2 modes in settings the goal value. In the screen of setting goal, tap the ••• button in top right corner and choose between:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Quick Select`}),`: scroll the value picker and choose a pre-defined one.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Exact Value`}),`: enter any custom value you want.`]}),`\n`]}),_jsx(Card,{title:`Editing the custome unit might affect the past data`,type:`warning`,horizontal:true,children:_jsx(_components.p,{children:`If you rename bottles to glasses, all historical logs display the new label too. Be aware of this especially when you review your data.`})}),_jsx(Card,{title:`Unit type can't change after saving.`,type:`warning`,horizontal:true,children:_jsx(_components.p,{children:`You can switch within the same type (minutes → hour), but not across types (minutes → km). Changing type requires creating a new habit`})}),_jsx(Heading,{level:`3`,id:`time-of-day`,children:`Time of Day`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1Z5ghdzaL-DicVDK7FaDQgGK8zj5dBcD3/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Time of Day`}),` is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.`]}),_jsx(_components.p,{children:`The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like ‘Morning’, ‘Afternoon’, ‘Evening’, ‘Night’, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.`}),_jsx(Card,{title:`There must be at least 1 Time of Day selected`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`A good habit must be assigned to at least 1 Time of Day. You can choose to assign it to multiple times of day.`})}),_jsx(Card,{title:`Time of Day is purely for organizing \u0026 filtering your list.`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`This setting is related to the Time of Day area in Journal where your habits are automatically filtered based on the current time.\\xA0`})}),_jsx(Heading,{level:`3`,id:`area`,children:`Area`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1tvk66uyWt5d6rRJoQHpPx_TnZR7C53Kb/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`An `,_jsx(_components.strong,{children:`Area`}),` is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.`]}),_jsx(_components.p,{children:`As your habit list grows, areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.`}),_jsx(Heading,{level:`3`,id:`reminders`,children:`Reminders`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1cSlZs9QFyc_Zq1iXugJLcDRAXXRLfIMI/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Setting `,_jsx(_components.strong,{children:`Reminders`}),` is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.`]}),_jsx(_components.p,{children:`In Habitify, there are three types of reminders:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Time reminder`}),`: set a specific time; add multiple reminders per habit (e.g., drink water at 8AM, 10AM, et.,)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Location reminder`}),`: triggers on arriving at or leaving a set location (e.g., gym when arriving home).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Habit Stacking`}),`: triggers based on completion of another habit (e.g., “Journal” reminder fires immediately when “Read a Book” is marked as completed).`]}),`\n`]}),_jsx(Heading,{level:`3`,id:`checklist`,children:`Checklist`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1NpDA2pu6Mkz6akeGqF_iW4DGYvrqSgtx/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Some habits are more than just a single action; they’re a collection of smaller steps. `,_jsx(_components.strong,{children:`Checklist`}),` let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.`]}),_jsx(_components.p,{children:`To add a new item in the habit’s checklist:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`In the `,_jsx(_components.strong,{children:`New Habit`}),` screen, tap to access `,_jsx(_components.strong,{children:`Checklist`}),`.`]}),`\n`,_jsx(_components.li,{children:`Tap on the input field of new item, enter the task name`}),`\n`,_jsxs(_components.li,{children:[`Tap the ✔ or `,_jsx(_components.strong,{children:`Done`}),` button on the keyboard to confirm the entry.`]}),`\n`]}),_jsx(Card,{title:`Habitify does not support to directly edit or change the order of items in the Checklist.`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`The item you add first will come first. The current solution is to remove the items and re-add them in the order you may want them to be sorted.`})}),_jsx(Heading,{level:`3`,id:`start-date`,children:`Start Date`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1aW_cVwF1Zxnp9_rgIL9SdSqDN4r-RAGU/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`The date you set in `,_jsx(_components.strong,{children:`Start Date`}),` is the date your habit starts showing up in the Journal. It defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.`]}),_jsx(Card,{title:`Possible consequence when you change Start Date of an existing habit`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.`})}),_jsx(Heading,{level:`3`,id:`end`,children:`End`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1sH9Zrz06-6-7W6lsbX2ixtNLqtNU7uEP/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`End`}),` setting allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.`]}),_jsx(_components.p,{children:`There are four ways to set an end point for your habit:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Ends when…`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Required`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`On a Date`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A specific calendar date is reached`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends on December 31, 2026`}),_jsx(_components.td,{style:{textAlign:`left`},children:`At least 7 days since Today`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After a Streak`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of consecutive periods is hit`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after a 100-day streak`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current streak`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After Total Completions`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of completed periods is reached (non-consecutive allowed)`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 50 successful days`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total completions`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`By Total Amount`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Cumulative logged value hits a target`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 10,000 total pages logged`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total amount`})]})]})]}),_jsx(Heading,{level:`2`,id:`how-a-good-habit-shows-in-the-list`,children:`How a good habit shows in the list`}),_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Week`}),` view of Journal, your habit will appear immediately, with the progress represented based on their goal.`]}),_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Day`}),` view, whether a habit appears in the `,_jsx(_components.strong,{children:`All Habits`}),` list, the `,_jsx(_components.strong,{children:`Time of Day`}),` list, or a custom `,_jsx(_components.strong,{children:`Area`}),` list is based on the settings of `,_jsx(_components.strong,{children:`Repeat`}),` and `,_jsx(_components.strong,{children:`Start Date`}),`.`]}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=585cda348f0831d32fe205a864927b73`,alt:`Good Habits Journal I OS`,\"data-og-width\":`2342`,width:`2342`,\"data-og-height\":`1317`,height:`1317`,\"data-path\":`images/GoodHabits_Journal_iOS.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=280\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=326592194bac9d2254e37016a8651005 280w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=560\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=ab5ee0a9d63b29187b74051910c4b927 560w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=840\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=cfbf0a46d843d3d4e8a32abb21bfa306 840w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=1100\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=f0f0c0cc3f1e5f03bf44a55f02765d2c 1100w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=1650\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=876adb6bda309f2cd8d32a9bac235d9b 1650w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/GoodHabits_Journal_iOS.png?w=2500\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=de9df8ffec3c178ae38a4dc0e3f49504 2500w`}),_jsx(_components.p,{children:`Where a good habit lands in within each list in the view depends on its goal type:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Good habits with a daily goal sit on the top of the list`}),`\n`,_jsxs(_components.li,{children:[`Good habits with a weekly, monthly, or yearly goal are categorized followingly to the section `,_jsx(_components.strong,{children:`this week`}),`, `,_jsx(_components.strong,{children:`this month`}),`, or `,_jsx(_components.strong,{children:`this year`}),`.`]}),`\n`]}),_jsxs(_components.p,{children:[`Like any habit, once it’s checked in for the day, it moves into the `,_jsx(_components.strong,{children:`Completed`}),`, `,_jsx(_components.strong,{children:`Skipped`}),`, or `,_jsx(_components.strong,{children:`Failed`}),` groups depending on the outcome, keeping what’s still open clearly separate from what’s already resolved.`]}),_jsx(Heading,{level:`2`,id:`how-to-record-progress-of-a-good-habit`,children:`How to record progress of a good habit`}),_jsx(_components.p,{children:`There are 4 options of recording the progress of a good habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Log`}),`: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Complete`}),`: Enter a value that is equal to the goal, and set the current period as complete.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skip`}),`: Set the current day as skip when you want to take a day off, this way can help you protect your current daily-based streak.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fail`}),`: Set the current day as fail when you consider it as a slip, and please be noted that this will break your streak.`]}),`\n`]}),_jsx(Heading,{level:`3`,id:`logging-progress-in-day-view`,children:`Logging progress in Day view`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1D9yxRTFhWyQTBADrCzTgCjrIh6qc196a/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`When you are using the Habitify iOS, the `,_jsx(_components.strong,{children:`Journal`}),` tab is the main place of your daily tracking on. From `,_jsx(_components.strong,{children:`Journal`}),`, these are the ways to record your progress on a habit:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Use smart button which is on the left to each habit.`}),`\n`,_jsxs(_components.li,{children:[`Swipe right to access the option `,_jsx(_components.strong,{children:`Complete`}),` or `,_jsx(_components.strong,{children:`Log`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Swipe left to access the option `,_jsx(_components.strong,{children:`Skip`}),` or `,_jsx(_components.strong,{children:`Fail`}),`.`]}),`\n`]}),_jsx(Heading,{level:`4`,id:`smart-buttons`,children:`Smart buttons`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=f0a2faa0edefa3f54f2f12de9f8c9dcf`,alt:`Smartbutton Journal I OS`,\"data-og-width\":`2531`,width:`2531`,\"data-og-height\":`1424`,height:`1424`,\"data-path\":`images/Smartbutton_Journal_iOS.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=280\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=571550467d1e02746aba559f12b02978 280w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=560\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=5abdab6f3bbebff987b3c541152d17fe 560w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=840\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=391d4055668dc44a9eb322ef597cc212 840w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=1100\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=7799da14cad85b2efdb2f63691f678f6 1100w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=1650\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=63bfee4b8cb473e839f701995d2b53e9 1650w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/Smartbutton_Journal_iOS.png?w=2500\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=130193ff34461d17a23a39a79bb29d04 2500w`}),_jsx(_components.p,{children:`For each habit, there is a quick button to log the entry for the habit progress:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`+ 1`}),` for habit with goal tracked in unit “time(s)”.`]}),`\n`,_jsx(_components.li,{children:`⏱️ for habits with duration-based goal`}),`\n`,_jsx(_components.li,{children:`⌨️ for habits with goal in other units (e.g., km, kcal, g, etc.,)`}),`\n`]}),_jsx(Heading,{level:`4`,id:`right-swipe`,children:`Right Swipe`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=a9cd4e8d29b476de8bf5b02abfb20c9e`,alt:`Swipe Right Journal I OS`,\"data-og-width\":`1950`,width:`1950`,\"data-og-height\":`1097`,height:`1097`,\"data-path\":`images/SwipeRight_Journal_iOS.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=280\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=d7488dd65220ba7cb2d7958826927d85 280w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=560\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=2b2406051999078c368a4fcf7ff5da5e 560w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=840\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=52c0b4fd3fd9aa5e60f512590751ad43 840w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=1100\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=522e0150b89b0a8594adf359043b9b66 1100w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=1650\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=3a4259d84e8d5c1f5f888a81cdbace3f 1650w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeRight_Journal_iOS.png?w=2500\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=817e4b7712c3ca0c4078dc63caad5f3b 2500w`}),_jsxs(_components.p,{children:[`When swiping right, you have the `,_jsx(_components.strong,{children:`Completion`}),` option to immediately mark your good habit as completed as well as log the goal value as your progress value for the current period.`]}),_jsxs(_components.p,{children:[`Otherwise, you can use `,_jsx(_components.strong,{children:`Log`}),` to record any progress value. For this option, you can choose between 2 modes of updating the current progress:`]}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Add`}),`: the value you enter will add up to the current progress value. `,_jsx(`br`,{}),`e.g., current progress is “2km” and you add “3km”, then the progress is updated to”5km”.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Set`}),`: the value you enter will be the updated current progress value. `,_jsx(`br`,{}),`e.g., current progress is “2km” and you set “3km”, then the progress is updated to “3km”.`]}),`\n`]}),_jsx(Heading,{level:`4`,id:`left-swipe`,children:`Left Swipe`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=d81711f3fc5831b6aef9ac12a38a46ad`,alt:`Swipe Left Journal I OS`,\"data-og-width\":`2160`,width:`2160`,\"data-og-height\":`1215`,height:`1215`,\"data-path\":`images/SwipeLeft_Journal_iOS.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=280\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=dd9cf88cf4d75533def8bf6cb328a35a 280w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=560\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=943ee35b02fc70f2c8ee748c5be520ab 560w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=840\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=e829ec9e92003125f9b182920002344e 840w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=1100\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=61d9c5eb4a3fd01746a757df7648a0d4 1100w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=1650\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=aca120e774afd6453172820d9de2adea 1650w, https://mintcdn.com/habitify/enmgtvLM6ls7WDyH/images/SwipeLeft_Journal_iOS.png?w=2500\u0026fit=max\u0026auto=format\u0026n=enmgtvLM6ls7WDyH\u0026q=85\u0026s=f6bb0eaef27b3644732397b94734abf3 2500w`}),_jsx(_components.p,{children:`By swiping the habit left, you also have the option to mark your habit as “Failed” or “Skipped”.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fail`}),` option is to mark the day when you plan to do your habit but you cannot, be aware that this option will break your current streak if your habit has a goal per day.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skip`}),` option is for the day when you don’t schedule your habit, maybe you’re sick or on holiday and temporarily put your habit on a pause.`]}),`\n`]}),_jsx(Card,{title:`Manual check-in is not supported for habits syncing data from Health apps`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`For habits that link and sync data from Apple Health, Fitbit, or Strava, Habitify does not support to manually log progress or mark the habit as complete in any way within the app. However, you still can mark those habits as skipped or failed.`})}),_jsx(Heading,{level:`3`,id:`logging-progress-in-week-view`,children:`Logging progress in Week view`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1N8q-bySztMM_E1SH1FAwN5dgnda466Eg/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Week`}),` view of `,_jsx(_components.strong,{children:`Journal`}),`, you record progress by interacting with each habit’s row.`]}),_jsx(_components.p,{children:`To record progress on a habit with daily goal,`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Tap the cell of the day you want to check in, on which the habit is scheduled to repeat.`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`If the habit’s goal is measured in times, each tap adds 1 to your progress.`}),`\n`,_jsxs(_components.li,{children:[`If the goal uses any other unit, a tap opens the `,_jsx(_components.strong,{children:`Log`}),` screen.`]}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`Hold on the cell of that day to access the `,_jsx(_components.strong,{children:`Skip`}),` or `,_jsx(_components.strong,{children:`Fail`}),` options.`]}),`\n`]}),_jsx(_components.p,{children:`To record progress on a the habits with weekly, monthly, or annual goal,`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Tap on the habit’s stripe to open the `,_jsx(_components.strong,{children:`Log`}),` screen.`]}),`\n`,_jsx(_components.li,{children:`The stripe fills as you log and shows your total progress toward the goal.`}),`\n`]}),_jsx(Heading,{level:`2`,id:`faqs`,children:`FAQs`}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How can I mark a whole week or a whole month as Skipped to protect my streak?`})}),id:`how-can-i-mark-a-whole-week-or-a-whole-month-as-skipped-to-protect-my-streak`,children:[_jsx(_components.p,{children:`Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.`}),_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Skip`}),`\\xA0function is deliberately designed to handle short-term, daily unpredictability, like waking up sick or having an unexpected emergency, so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to undo a wrong progress log?`})}),id:`how-to-undo-a-wrong-progress-log`,children:[_jsx(_components.p,{children:`If your habit is updated with a status (Completed, Skipped, Failed), from Journal, find the habit and tap the\\xA0↩ button next to it.`}),_jsx(_components.p,{children:`if your habit is still in progress:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`From `,_jsx(_components.strong,{children:`Journal`}),`, tap on the habit to open its single progress view.`]}),`\n`,_jsx(_components.li,{children:`Tap the\\xA0••• button in the top right corner.`}),`\n`,_jsxs(_components.li,{children:[`Choose `,_jsx(_components.strong,{children:`Log History`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`In the `,_jsx(_components.strong,{children:`Log History`}),`, swipe left the wrong log, and choose `,_jsx(_components.strong,{children:`Delete`}),`.`]}),`\n`,_jsx(_components.li,{children:`Tap the turn-back button to save and return.`}),`\n`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to edit a good habit?`})}),id:`how-to-edit-a-good-habit`,children:[_jsx(_components.p,{children:`To edit a good habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`From `,_jsx(_components.strong,{children:`Journal`}),`, tap on the habit to open its single progress view.`]}),`\n`,_jsxs(_components.li,{children:[`Tap `,_jsx(_components.strong,{children:`Edit`}),` in the top right corner.`]}),`\n`]}),_jsx(_components.p,{children:`If your habit does not appear in the today’s list:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Go to `,_jsx(_components.strong,{children:`Settings`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Tap `,_jsx(_components.strong,{children:`All Habits`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Tap on the habit, and choose `,_jsx(_components.strong,{children:`Edit`}),`.`]}),`\n`]})]})]}),_jsxs(Tab,{title:`🤖 Android`,id:`%F0%9F%A4%96-android`,\"data-child-heading-ids\":`[\"how-to-create-a-good-habit-2\",\"details-of-a-good-habit-2\",\"repeat-2\",\"goal-2\",\"time-of-day-2\",\"area-2\",\"reminders-2\",\"checklist-2\",\"start-date-2\",\"end-condition\",\"how-a-good-habit-shows-in-journal\",\"how-to-record-progress-of-a-good-habit-2\",\"logging-progress-in-day-view-2\",\"smart-buttons-2\",\"right-swipe-2\",\"left-swipe-2\",\"logging-progress-in-week-view-2\",\"faqs-2\"]`,children:[_jsx(Heading,{level:`2`,id:`how-to-create-a-good-habit-2`,children:`How to create a good habit`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1eq5cs-OzScF595HEu2RXYL_z81mkbO5h/preview`,width:`640`,height:`360`}),_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`In the Habitify Android app, access the `,_jsx(_components.strong,{children:`Journal`}),` tab.`]}),`\n`,_jsxs(_components.li,{children:[`Tap the + button near the bottom right corner, then choose `,_jsx(_components.strong,{children:`Create Good Habit`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Choose a pre-defined habit template,`,_jsx(`br`,{}),`or tap `,_jsx(_components.strong,{children:`Create Your Own`}),` to build from scratch.`]}),`\n`,_jsxs(_components.li,{children:[`Fill in the details of your habit, such as `,_jsx(_components.strong,{children:`Goal`}),` and `,_jsx(_components.strong,{children:`Reminders`}),`.`,_jsx(`br`,{}),`For each change, remember to tap ← to save change and go back.`]}),`\n`,_jsxs(_components.li,{children:[`Once everything is set, tap the `,_jsx(_components.strong,{children:`Save`}),` button to confirm the new habit to your list.`]}),`\n`]}),_jsx(Heading,{level:`2`,id:`details-of-a-good-habit-2`,children:`Details of a good habit`}),_jsx(Heading,{level:`3`,id:`repeat-2`,children:`Repeat`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1tB4wzZ-RLCpLUrsSxFUN9PjZ8U1-x4o_/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Configuring `,_jsx(_components.strong,{children:`Repeat`}),` is to schedule the habit shows up in Journal.`]}),_jsx(_components.p,{children:`For habit with goal per day, it also define which days count toward your streak and your completion score.`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Mode`}),_jsx(_components.th,{style:{textAlign:`left`},children:`How it works`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Daily`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Appears every single day or specific day(s) in a week`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Everyday`}),_jsx(`li`,{children:`Mon, Wed, and Fri`}),_jsx(`li`,{children:`Weekends (Sun, Sat)`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Monthly`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats on one or more specific date(s) of the month`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`The 2nd of the month`}),_jsx(`li`,{children:`The 15th and 30th of the month`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Interval`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Every 2 days`}),_jsx(`li`,{children:`Every 7 days`})]})})]})]})]}),_jsx(Heading,{level:`3`,id:`goal-2`,children:`Goal`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1w_8oq1xtattunqK6wpy9xpT5Skw8REjP/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Goal`}),` is the minimum target that defines “success” for a given period. Configure three parts:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)`}),`\n`,_jsx(_components.li,{children:`Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)`}),`\n`,_jsx(_components.li,{children:`Period: per day, per week, per month, or per year`}),`\n`]}),_jsx(_components.p,{children:`There are 2 modes in settings the goal value. In the screen of setting goal, tap the ••• button in top right corner and choose between:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Quick Select`}),`: scroll the value picker and choose a pre-defined one.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Exact Value`}),`: enter any custom value you want.`]}),`\n`]}),_jsx(Card,{title:`Unit type can’t change after saving.`,type:`warning`,horizontal:true,children:_jsx(_components.p,{children:`You can switch within the same type (minutes → hours), but not across types (minutes → km). Changing type requires creating a new habit.`})}),_jsx(Card,{title:`Editing a custom unit’s label rewrites past data.`,type:`warning`,horizontal:true,children:_jsx(_components.p,{children:`If you rename “bottles” to “glasses,” all historical logs display the new label too. Be aware especially when you do the review on your past data in this case.`})}),_jsx(Heading,{level:`3`,id:`time-of-day-2`,children:`Time of Day`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1lEggXoVdb6FhW2YDqtq1X_uf7JCSrflQ/preview`,width:`640`,height:`360`}),_jsx(_components.p,{children:`Time of Day is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.`}),_jsx(_components.p,{children:`The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like morning, afternoon, evening, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.`}),_jsx(Card,{title:`There must be at least 1 Time of Day selected.`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`A good habit must be assigned to at least 1 Time of Day.\\xA0You can choose all options of Time of Day so your habit appears all day long in the Time of Day list.`})}),_jsx(Card,{title:`Time of Day is purely for organizing your list into sections.`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`This setting is related to the Time of Day area in Journal where your habits are automatically filtered based on the current time.`})}),_jsx(Heading,{level:`3`,id:`area-2`,children:`Area`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1F_7f_gieW9pIv8yLPskQdST6gSE2ofCn/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`An `,_jsx(_components.strong,{children:`Area`}),` is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.`]}),_jsx(_components.p,{children:`As your habit list grows, Areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.`}),_jsx(Heading,{level:`3`,id:`reminders-2`,children:`Reminders`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1AeGcjekiJ3fV5x8iNuTYzG4eCAXGkRu3/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Setting a `,_jsx(_components.strong,{children:`Reminder`}),` is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.`]}),_jsx(_components.p,{children:`In Habitify, there are three types of reminders:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Time`}),`: set a specific time; add multiple reminders per habit (e.g., drink water at 8AM, 10AM, et.,)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Location`}),`: triggers on arriving at or leaving a set location (e.g., gym when arriving home).`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Habit Stacking`}),`: triggers based on completion of another habit (e.g., “Journal” reminder fires immediately when “Read a Book” is marked as completed).`]}),`\n`]}),_jsx(Heading,{level:`3`,id:`checklist-2`,children:`Checklist`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1MwcF4YQhAWM6PHHr50nKh6P6fhImpl4i/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Some habits are more than just a single action; they’re a collection of smaller steps. `,_jsx(_components.strong,{children:`Checklist`}),` let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.`]}),_jsx(_components.p,{children:`To add a new item in the habit’s checklist:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`In the screen to set up a habit, scroll down to Checklist.`}),`\n`,_jsxs(_components.li,{children:[`Tap `,_jsx(_components.strong,{children:`Add More`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Enter an item, then tap `,_jsx(_components.strong,{children:`Save`}),`.`]}),`\n`,_jsx(_components.li,{children:`Repeat the steps to add the other.`}),`\n`]}),_jsx(Card,{title:`Habitify does not support to directly edit or change the order of items in the Checklist.`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`The item you add first will come first. The current solution is to remove the items and re-add them in the order you may want them to be sorted.`})}),_jsx(Heading,{level:`3`,id:`start-date-2`,children:`Start Date`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1iiNRS92TIjE95ZyC1K3D_sbPpMD0oh05/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`The date you set in `,_jsx(_components.strong,{children:`Start Date`}),` is the date your habit starts showing up in the Journal or List view. It defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.`]}),_jsx(Card,{title:`Possible consequence when you change Start Date of an existing habit`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.`})}),_jsx(Heading,{level:`3`,id:`end-condition`,children:`End Condition`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1146BLNt-MIWaqw0vIeoy8RSNSpuegFYP/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End Condition`}),` allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.`]}),_jsx(_components.p,{children:`There are four ways to set an end point for your habit:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Ends when…`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Required`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`On a Date`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A specific calendar date is reached`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends on December 31, 2026`}),_jsx(_components.td,{style:{textAlign:`left`},children:`At least 7 days since Today`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After a Streak`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of consecutive periods is hit`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after a 100-day streak`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current streak`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After Total Completions`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of completed periods is reached (non-consecutive allowed)`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 50 successful days`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total completions`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`By Total Amount`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Cumulative logged value hits a target`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 10,000 total pages logged`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total amount`})]})]})]}),_jsx(Heading,{level:`2`,id:`how-a-good-habit-shows-in-journal`,children:`How a good habit shows in Journal`}),_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Day`}),` view, whether a habit appears in the `,_jsx(_components.strong,{children:`All Habit`}),` list, the `,_jsx(_components.strong,{children:`Time of Day`}),` list, or a custom `,_jsx(_components.strong,{children:`Area`}),` list is based on the settings of `,_jsx(_components.strong,{children:`Repeat`}),` and `,_jsx(_components.strong,{children:`Start Date`}),`.`]}),_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Week`}),` view, your habit will appear immediately, with the progress represented based on their goal.`]}),_jsx(Heading,{level:`2`,id:`how-to-record-progress-of-a-good-habit-2`,children:`How to record progress of a good habit`}),_jsx(_components.p,{children:`There are 4 options of recording the progress of a good habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Log value`}),`: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Complete`}),`: Enter a value that is equal to the goal, and set the current period as complete.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skip`}),`: Set the current day as skip when you want to take a day off, this way can help you protect your current daily-based streak.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fail`}),`: Set the current day as fail when you consider it as a slip, and please be noted that this will break your streak.`]}),`\n`]}),_jsx(_components.p,{children:`When you are using the Habitify Android, the Journal tab is the main place of your daily tracking.`}),_jsx(Heading,{level:`3`,id:`logging-progress-in-day-view-2`,children:`Logging progress in Day view`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1N6w3WP1xBLz61FEtsK4YxzRDOCFiV1h5/preview`,width:`640`,height:`360`}),_jsx(_components.p,{children:`In Day view, these are the ways to record your progress on a habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Use smart button which is on the left to each habit.`}),`\n`,_jsxs(_components.li,{children:[`Swipe right to access the option `,_jsx(_components.strong,{children:`Complete`}),` or `,_jsx(_components.strong,{children:`Log Value`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Swipe left to access the button `,_jsx(_components.strong,{children:`Skip`}),` or `,_jsx(_components.strong,{children:`Fail`}),`.`]}),`\n`]}),_jsx(Heading,{level:`4`,id:`smart-buttons-2`,children:`Smart buttons`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=bc190a7618a6a2a21012a163b9095816`,alt:`Smartbutton Journal Android`,\"data-og-width\":`2845`,width:`2845`,\"data-og-height\":`1601`,height:`1601`,\"data-path\":`images/Smartbutton_Journal_Android.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=280\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=4ef92d136326d3163cdaaf52eab2d6ca 280w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=560\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=3f32762b0fc29c76b5cbb93a7be3debd 560w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=840\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=199d4252ae564c1ac52a1db18795b67c 840w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=1100\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=7814f74a7f89c3868d28259aff3cd10e 1100w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=1650\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=0e033977506281bb5ea8ca235656d644 1650w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/Smartbutton_Journal_Android.png?w=2500\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=dc484109954d81ec5420038bd7f53c1d 2500w`}),_jsx(_components.p,{children:`For each habit, there is a quick button to log the entry for the habit progress:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`✓ button for habit with goal = 1 time`}),`\n`,_jsx(_components.li,{children:`+ 1 button for habit with goal = x times ( x > 1)`}),`\n`,_jsx(_components.li,{children:`⏱️ button for habits with duration-based goal`}),`\n`,_jsx(_components.li,{children:`╋ button for habits with goal in other units (e.g., km, kcal, g, etc.,)`}),`\n`]}),_jsx(Heading,{level:`4`,id:`right-swipe-2`,children:`Right Swipe`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=9b8f332aafba7e58f34404e906a1eb12`,alt:`Swipe Right Journal Android`,\"data-og-width\":`1853`,width:`1853`,\"data-og-height\":`1042`,height:`1042`,\"data-path\":`images/SwipeRight_Journal_Android.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=280\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=bba00b17bf2ea1fb1d98067314767169 280w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=560\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=ee060d8b16d60833fe8f8d403064dcc6 560w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=840\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=7ce7abe464fa142b82dc99d883e55f91 840w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=1100\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=81eaae95d1e8af61576a0b1d0629c335 1100w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=1650\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=18ff2fab9c4945b9822752fb5ea3c25a 1650w, https://mintcdn.com/habitify/Hcui6YFTV8d0hz21/images/SwipeRight_Journal_Android.png?w=2500\u0026fit=max\u0026auto=format\u0026n=Hcui6YFTV8d0hz21\u0026q=85\u0026s=afe56f5bf2cd5040d9d38f0fc419a84f 2500w`}),_jsxs(_components.p,{children:[`When swiping right, you have the the `,_jsx(_components.strong,{children:`Complete`}),` option to immediately mark your good habit as completed as well as log the goal value as your progress value for the current period.`]}),_jsxs(_components.p,{children:[`Otherwise, you can use `,_jsx(_components.strong,{children:`Log Value`}),` to add any value to your habit progress. `,_jsx(`br`,{}),`e.g., current progress is “2km” and you add “3km”, then the progress is updated to”5km”.`]}),_jsx(Heading,{level:`4`,id:`left-swipe-2`,children:`Left Swipe`}),_jsx(OptimizedImage,{src:`https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=07789ddfc30592a996be2489f4eef4ef`,alt:`Swipe Left Journal Android`,\"data-og-width\":`1887`,width:`1887`,\"data-og-height\":`1061`,height:`1061`,\"data-path\":`images/SwipeLeft_Journal_Android.png`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=280\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=327615ee989d8d056bf6309879d41093 280w, https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=560\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=900fa4d2f6b9894cb3ed68c25802ae16 560w, https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=840\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=ccf41aeeb5b6d2347d4bdd8451daeed9 840w, https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=1100\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=48bac4ff92960d50eb717387a5f6a774 1100w, https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=1650\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=0de11e56e30062b39d0dae6305260519 1650w, https://mintcdn.com/habitify/jDfEnDasfFN_oBFP/images/SwipeLeft_Journal_Android.png?w=2500\u0026fit=max\u0026auto=format\u0026n=jDfEnDasfFN_oBFP\u0026q=85\u0026s=7225090e3604d8ee56f6a58619fd0bcb 2500w`}),_jsx(_components.p,{children:`By swiping the habit left, you also have the option to mark your habit as “Failed” or “Skipped”.`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fail`}),` is to mark the day when you plan to do your habit but you cannot, be aware that this option will break your current streak if your habit has a goal per day.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skip`}),` is for the day when you don’t schedule your habit, maybe you’re sick or on holiday and temporarily put your habit on a pause.`]}),`\n`]}),_jsx(Card,{title:`Manual check-in is not supported for habits syncing data from Health apps`,type:`note`,horizontal:true,children:_jsx(_components.p,{children:`For habits that link and sync data from Health Connect, Fitbit, or Strava, Habitify does not support to manually log progress or mark the habit as complete in any way within the app. However, you still can mark those habits as skipped or failed.`})}),_jsx(Heading,{level:`3`,id:`logging-progress-in-week-view-2`,children:`Logging progress in Week view`}),_jsx(_components.p,{children:`In Week View, you record progress directly on each habit’s row.`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/13Jk2uWSrzhhf4qbx_V31NGzWEE1jy6e_/preview`,width:`640`,height:`360`}),_jsx(_components.p,{children:`To record progress on a habit with daily goal:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Tap the cell of the day you want to check in, on which the habit is scheduled to repeat.`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`If the habit’s goal is measured in times, each tap adds 1 to your progress.`}),`\n`,_jsx(_components.li,{children:`If the goal uses any other unit, a tap opens the Log Value screen.`}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[`Hold on the cell of that day to mark the day with `,_jsx(_components.strong,{children:`Skip`}),` or `,_jsx(_components.strong,{children:`Fail`}),`.`]}),`\n`]}),_jsx(_components.p,{children:`To record progress on a the habits with weekly, monthly, or annual goal:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Tap on a cell or the progress stripe to open the `,_jsx(_components.strong,{children:`Log Value`}),` screen.`]}),`\n`,_jsx(_components.li,{children:`The stripe fills as you log and shows your total progress toward the goal.`}),`\n`]}),_jsx(Heading,{level:`2`,id:`faqs-2`,children:`FAQs`}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How can I mark a whole week or a whole month as Skip and protect my streak?`})}),id:`how-can-i-mark-a-whole-week-or-a-whole-month-as-skip-and-protect-my-streak`,children:[_jsx(_components.p,{children:`Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.`}),_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Skip`}),` function is deliberately designed to handle short-term, daily unpredictability, like waking up sick or having an unexpected emergency, so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to undo a wrong progress log on a good habit?`})}),id:`how-to-undo-a-wrong-progress-log-on-a-good-habit`,children:[_jsx(_components.p,{children:`If your habit is updated with a status (Completed, Skipped, Failed), from Journal, swipe it right to unmark the status and choose to reset the current day’s progress.`}),_jsx(_components.p,{children:`if your habit is still in progress:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`From `,_jsx(_components.strong,{children:`Journal`}),`, tap on the habit to open its single progress view.`]}),`\n`,_jsx(_components.li,{children:`Tap the\\xA0⋮ button in the top right corner.`}),`\n`,_jsxs(_components.li,{children:[`Choose `,_jsx(_components.strong,{children:`Log History`})]}),`\n`,_jsxs(_components.li,{children:[`In the `,_jsx(_components.strong,{children:`Log History`}),`, swipe left the wrong log, and choose `,_jsx(_components.strong,{children:`Delete`}),`.`]}),`\n`,_jsx(_components.li,{children:`Tap the turn-back button to save and return.`}),`\n`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to edit a good habit?`})}),id:`how-to-edit-a-good-habit-1`,children:[_jsxs(_components.p,{children:[`If your good habit appears in `,_jsx(_components.strong,{children:`Journal`}),`:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Tap on your habit to open its single progress view.`}),`\n`,_jsx(_components.li,{children:`Tap the\\xA0⫶ button in the top right corner.`}),`\n`,_jsxs(_components.li,{children:[`Choose `,_jsx(_components.strong,{children:`Edit`}),`.`]}),`\n`]}),_jsx(_components.p,{children:`If your good habit doesn’t appear in Journal:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Go to `,_jsx(_components.strong,{children:`Settings`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Tap `,_jsx(_components.strong,{children:`Manage Habits`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Press and hold on a habit, choose `,_jsx(_components.strong,{children:`Edit`}),`.`]}),`\n`]})]})]}),_jsxs(Tab,{title:`🖥️ Website \u0026 Desktop`,id:`%F0%9F%96%A5%EF%B8%8F-website-%26-desktop`,\"data-child-tab-ids\":`[\"time-reminder\",\"location-reminder\",\"habit-stacking-reminder\"]`,\"data-child-heading-ids\":`[\"how-to-create-a-good-habit-3\",\"details-of-a-good-habit-3\",\"repeat-3\",\"goal-3\",\"time-of-day-3\",\"start-date-3\",\"end-condition-2\",\"reminders-3\",\"area-3\",\"checklist-3\",\"how-a-good-habit-shows-in-the-list-2\",\"how-to-record-progress-of-a-good-habit-3\",\"tracking-in-grid-view\",\"tracking-in-list-view\",\"faqs-3\"]`,children:[_jsx(Heading,{level:`2`,id:`how-to-create-a-good-habit-3`,children:`How to create a good habit`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1W4NzQD2KMWiJ-o1xODD0iIZVpXDP5Cok/preview`,width:`640`,height:`360`}),_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`From the left navigation bar, access the `,_jsx(_components.strong,{children:`All Habits`}),` tab.`]}),`\n`,_jsxs(_components.li,{children:[`Navigate to the bottom action bar, click `,_jsx(_components.strong,{children:`+ Add Habit`}),`, then choose `,_jsx(_components.strong,{children:`Create Good Habit`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Click the name field and choose one from the pre-defined habit template.`,_jsx(`br`,{}),`Or simply enter the name of your own habit, and start with a scratch.`]}),`\n`,_jsx(_components.li,{children:`Configure the detailed settings.`}),`\n`,_jsxs(_components.li,{children:[`Once everything is set, click the `,_jsx(_components.strong,{children:`Save`}),` button at the bottom right corner to save the new habit to your tracking list`]}),`\n`]}),_jsx(Heading,{level:`2`,id:`details-of-a-good-habit-3`,children:`Details of a good habit`}),_jsx(Heading,{level:`3`,id:`repeat-3`,children:`Repeat`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1EVN2hfFCz-1jTYtnvOMQ7hCnQDFSQolS/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Configuring `,_jsx(_components.strong,{children:`Repeat`}),` is to schedule the habit shows up in the List View.`]}),_jsx(_components.p,{children:`For habit with goal per day, it also define which days count toward your streak and your completion score.`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Mode`}),_jsx(_components.th,{style:{textAlign:`left`},children:`How it works`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Daily`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Appears specific day(s) in a week or every single day.`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Everyday`}),_jsx(`li`,{children:`Mon, Wed, and Fri`}),_jsx(`li`,{children:`Weekends (Sun, Sat)`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Monthly`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats on one or more specific date(s) of the month`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`The 2nd of the month`}),_jsx(`li`,{children:`The 15th and 30th of the month`})]})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`Interval`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Repeats every N days (e.g., every 3 or 5 days); the app previews the next 3 upcoming dates`}),_jsx(_components.td,{style:{textAlign:`left`},children:_jsxs(`ul`,{children:[_jsx(`li`,{children:`Every 2 days`}),_jsx(`li`,{children:`Every 7 days`})]})})]})]})]}),_jsx(Heading,{level:`3`,id:`goal-3`,children:`Goal`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1k-1HNm-XHWrvB93sFjJ1oVDzYKmLv8ix/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Goal`}),` is the minimum target that defines “success” for a given period. Configure three parts:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Value: the minimum amount to hit (e.g., 1 time, 30 minutes, 2 litres)`}),`\n`,_jsx(_components.li,{children:`Unit: pick from a pre-defined list suited to the habit template (e.g., “Drink Water” suggests litres, ml, US fl oz, cup), or create a custom unit by choosing base unit “times” and naming it (e.g., “chapters,” “clients”)`}),`\n`,_jsx(_components.li,{children:`Period: per day, per week, per month, or per year`}),`\n`]}),_jsx(Info,{children:_jsx(_components.p,{children:`Unit type can’t change after saving. You can switch within the same type (minutes → hours), but not across types (minutes → km). Changing type requires creating a new habit.`})}),_jsx(Info,{children:_jsx(_components.p,{children:`Editing a custom unit’s label rewrites past data. If you rename “bottles” to “glasses,” all historical logs display the new label too.`})}),_jsx(Heading,{level:`3`,id:`time-of-day-3`,children:`Time of Day`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1jDbpc5RUrZuRyiVCaf15076MQAmKVu3R/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Time of Day`}),` is basically Morning, Afternoon, or Evening, or anyway you divide your normal day.`]}),_jsx(_components.p,{children:`The primary benefit is to transform your daily habit list from a simple checklist into a structured plan for your entire day with the Time of Day lists like ‘Morning’, ‘Afternoon’, ‘Evening’, ‘Night’, etc., helping you to focus on your morning habits when you wake up, without being distracted by tasks for later in the day.`}),_jsx(Info,{children:_jsxs(_components.p,{children:[`There must be at least 1 `,_jsx(_components.strong,{children:`Time of Day`}),` selected. You can choose all options of Time of Day so your habit appears all day long in the Time of Day list.`]})}),_jsx(Info,{children:_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Time of Day`}),` is purely for organizing your list into sections. A Reminder is a specific push notification that alerts you at an exact time (e.g., 8:00 AM). You can have a “Morning” habit with a reminder set for 8:00 AM.`]})}),_jsx(Heading,{level:`3`,id:`start-date-3`,children:`Start Date`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1LT1VoV6AUh-T-wBd3F16QHbSOuh_AQAX/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`The date you set in `,_jsx(_components.strong,{children:`Start Date`}),` is the date your habit starts showing up when you view your habits in the List layout.`]}),_jsxs(_components.p,{children:[`In the `,_jsx(_components.strong,{children:`Grid`}),` layout, `,_jsx(_components.strong,{children:`Start Date`}),` determines the cell from which you can interact and check in. The cells of the date before your habit’s start date will be crossed out and unavailable to click on.`]}),_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Start Date`}),`’s value defaults to today, but you can set it earlier to backfill progress you’ve already made, or later to plan ahead for a habit you’re not starting yet.`]}),_jsx(Info,{children:_jsx(_components.p,{children:`If you change the start date further back for an existing habit, the newly-added days will default to a goal of “1 time”.`})}),_jsx(Heading,{level:`3`,id:`end-condition-2`,children:`End Condition`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1s2iJYzac7bLfjSeNqoxmb5wxqPcu0kEW/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`End Condition`}),` allows you to define a clear finish line for your temporary habits, helping you stay focused and giving you a great sense of accomplishment when you cross it. Instead of a habit running forever, you can set it to stop automatically once your goal is met.`]}),_jsx(_components.p,{children:`There are four ways to set an end point for your habit:`}),_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{style:{textAlign:`left`},children:`Type`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Ends when…`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Example`}),_jsx(_components.th,{style:{textAlign:`left`},children:`Required`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`On a Date`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A specific calendar date is reached`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends on December 31, 2026`}),_jsx(_components.td,{style:{textAlign:`left`},children:`At least 7 days since Today`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After a Streak`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of consecutive periods is hit`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after a 100-day streak`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current streak`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`After Total Completions`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`A target number of completed periods is reached (non-consecutive allowed)`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 50 successful days`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total completions`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{style:{textAlign:`left`},children:_jsx(_components.strong,{children:`By Total Amount`})}),_jsx(_components.td,{style:{textAlign:`left`},children:`Cumulative logged value hits a target`}),_jsx(_components.td,{style:{textAlign:`left`},children:`ends after 10,000 total pages logged`}),_jsx(_components.td,{style:{textAlign:`left`},children:`Must be greater than current total amount`})]})]})]}),_jsx(Heading,{level:`3`,id:`reminders-3`,children:`Reminders`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1mWEF3ydUbInI5-ftWDaaB16rkRzBt-3G/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`Setting a `,_jsx(_components.strong,{children:`Reminder`}),` is one of the most effective ways to stay consistent with a new habit - a well-timed nudge often makes the difference between “I’ll do it later” and actually doing it.`]}),_jsxs(_components.p,{children:[`In Habitify, there are three types of reminders: `,_jsx(_components.strong,{children:`Time`}),`, `,_jsx(_components.strong,{children:`Location`}),`, and `,_jsx(_components.strong,{children:`Habit Stacking`}),`. How to set up each type of reminder as below.`]}),_jsxs(Tabs,{children:[_jsx(Tab,{title:`Time Reminder`,id:`time-reminder`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Click the `,_jsx(_components.strong,{children:`Reminder`}),` field.`]}),`\n`,_jsxs(_components.li,{children:[`Choose type `,_jsx(_components.strong,{children:`Time`}),`.`]}),`\n`,_jsx(_components.li,{children:`Enter the time and set AM/PM.`}),`\n`,_jsxs(_components.li,{children:[`Optionally, switch to enable the `,_jsx(_components.strong,{children:`Custom Schedule`}),` and choose the specific day(s) when the reminder is set for.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Done`}),` to add the new reminder.`]}),`\n`]})}),_jsx(Tab,{title:`Location Reminder`,id:`location-reminder`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Click the `,_jsx(_components.strong,{children:`Reminder`}),` field.`]}),`\n`,_jsxs(_components.li,{children:[`Choose type `,_jsx(_components.strong,{children:`Location`}),`.`]}),`\n`,_jsx(_components.li,{children:`Search for the based location, and choose the correct one from the result list.`}),`\n`,_jsx(_components.li,{children:`Adjust the distance to the based location where the app should fire the reminder.`}),`\n`,_jsxs(_components.li,{children:[`Choose between `,_jsx(_components.strong,{children:`Entering`}),` and `,_jsx(_components.strong,{children:`Leaving`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Done`}),` to add the new reminder.`]}),`\n`]})}),_jsx(Tab,{title:`Habit Stacking Reminder`,id:`habit-stacking-reminder`,children:_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[`Click the `,_jsx(_components.strong,{children:`Reminder`}),` field.`]}),`\n`,_jsxs(_components.li,{children:[`Choose type `,_jsx(_components.strong,{children:`Habit Stacking`}),`.`]}),`\n`,_jsxs(_components.li,{children:[`In `,_jsx(_components.strong,{children:`Remind me to when`}),`, choose the triggering habit.`]}),`\n`,_jsxs(_components.li,{children:[`In `,_jsx(_components.strong,{children:`Triggering event`}),`, choose the triggering status or the reminders of the triggering habits.`]}),`\n`,_jsxs(_components.li,{children:[`In `,_jsx(_components.strong,{children:`Send notification`}),`, choose when you want to receive the reminder in the correlation with the triggering event.`]}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Done`}),` to add the new reminder.`]}),`\n`]})})]}),_jsx(Heading,{level:`3`,id:`area-3`,children:`Area`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1-jFIqXsmgOC3dAhdALhaUJw_JrwXUl34/preview`,width:`640`,height:`360`}),_jsxs(_components.p,{children:[`An `,_jsx(_components.strong,{children:`Area`}),` is a way to group related habits together - like habits of “Health,” “Work,” or “Morning Routine” - instead of treating every habit as a standalone item on a flat list.`]}),_jsx(_components.p,{children:`As your habit list grows, Areas keep things organized without adding friction, allowing you go from “did I do this one thing today” to “how am I actually doing at work, at home, in my health”, and get the bigger picture of how things are going for you.`}),_jsx(Heading,{level:`3`,id:`checklist-3`,children:`Checklist`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1uGHlyc4cpTPlQzVBwHCNQAK0Xt4AzJhF/preview`,width:`640`,height:`360`}),_jsx(_components.p,{children:`Some habits are more than just a single action; they’re a collection of smaller steps.`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Checklist`}),` let you break down a large, complex habit into a series of smaller, more manageable sub-tasks. This helps you build momentum and gives you a clear roadmap to completion, making big goals feel less intimidating.`]}),_jsx(_components.p,{children:`To add a new item in the habit’s checklist:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`In the `,_jsx(_components.strong,{children:`New Habit`}),` window, find `,_jsx(_components.strong,{children:`Checklist`}),`, and click the input field.`]}),`\n`,_jsx(_components.li,{children:`Add the items, seperate each team by Enter from your keyboard.`}),`\n`]}),_jsx(Heading,{level:`2`,id:`how-a-good-habit-shows-in-the-list-2`,children:`How a good habit shows in the list`}),_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`List`}),` layout, whether a habit appears in `,_jsx(_components.strong,{children:`All Habits`}),` list, `,_jsx(_components.strong,{children:`Time of Day`}),` list, or a custom `,_jsx(_components.strong,{children:`Area`}),` list is based on the settings of `,_jsx(_components.strong,{children:`Repeat`}),` and `,_jsx(_components.strong,{children:`Start Date`}),`.`]}),_jsxs(_components.p,{children:[_jsx(_components.em,{children:`For example, if your habit has Start Date as`}),` `,_jsx(_components.code,{children:`2026-07-01 `}),_jsx(_components.em,{children:`and Repeat as`}),` `,_jsx(_components.code,{children:`every 2 days `}),_jsx(_components.em,{children:`, then it will appear in the list of date`}),` `,_jsx(_components.code,{children:`2026-07-01`}),_jsx(_components.em,{children:`,`}),` `,_jsx(_components.code,{children:`2026-07-03`}),_jsx(_components.em,{children:`,`}),` `,_jsx(_components.code,{children:`2026-07-05,`}),_jsx(_components.em,{children:`etc.`})]}),_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Grid`}),` layout, all the habits you are actively tracking appears, regardless of their `,_jsx(_components.strong,{children:`Repeat`}),` and `,_jsx(_components.strong,{children:`Star Date`}),` settings. For days before the start date, their cells will be crossed off.`]}),_jsx(Heading,{level:`2`,id:`how-to-record-progress-of-a-good-habit-3`,children:`How to record progress of a good habit`}),_jsx(OptimizedFrame,{src:`https://drive.google.com/file/d/1eibpmQUbkYaPlY5uvJg-WzLE8A2AApRE/preview`,width:`640`,height:`360`}),_jsx(_components.p,{children:`There are 4 options of recording the progress of a good habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Add log`}),`: Enter a value that is actually accomplished, the value can be bigger or smaller than the goal.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Complete`}),` or `,_jsx(_components.strong,{children:`Mark as completed`}),`: Enter a value that is equal to the goal, and set the current period as complete.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Skip`}),` or `,_jsx(_components.strong,{children:`Mark as skipped`}),`: Set the current day as skip.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fail`}),` or `,_jsx(_components.strong,{children:`Mark as failed`}),`: Set the current day as fail.`]}),`\n`]}),_jsxs(Info,{children:[_jsx(_components.p,{children:`Difference between ‘skip’ and ‘fail’`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Skip: use it when it is a day off, and you want to protect your daily-based streak`}),`\n`,_jsx(_components.li,{children:`Fail: use it when you should complete the habit but you miss it.`}),`\n`]})]}),_jsx(Info,{children:_jsx(_components.p,{children:`Skip doesn’t protect weekly-based, monthly-based, or annual-based streak. Once you do not complete your weekly/monthly/annual goal, your current streak will reset to 0.`})}),_jsxs(_components.p,{children:[`Based on whether you are viewing the `,_jsx(_components.strong,{children:`Grid`}),` or `,_jsx(_components.strong,{children:`List`}),` layout, these are the ways to track your habit progress`]}),_jsx(Heading,{level:`3`,id:`tracking-in-grid-view`,children:`Tracking in Grid view`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Grid`}),` view gives you a calendar-like overview of your habits. Each cell in the grid represents a single day for a habit. Consequently, you can check in a single day and several days in bulk.`]}),_jsx(_components.p,{children:`To check in status or log progress for a single day:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Click to Select: Click on any cell (day). An action bar will appear at the bottom. Choose from Complete, Skip, or Fail.`}),`\n`,_jsx(_components.li,{children:`Right-Click for Speed: Right-click on any cell. An action menu will appear. Choose the action you want from the list.`}),`\n`,_jsxs(_components.li,{children:[`Use keyboard shortcuts Choose a cell and use one of these keyboard shortcuts`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`for macOS users: Option + C (to complete), Option + S (to skip), or Option + F (to fail)`}),`\n`,_jsx(_components.li,{children:`for windows users: Alt + C (to complete), Alt + S (to skip), or Alt + F (to fail)`}),`\n`]}),`\n`]}),`\n`]}),_jsx(_components.p,{children:`To check in status or log progress for multiple days:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`For specific, non-consecutive days: Hold down Ctrl (on Windows) or Cmd (on Mac) and click on all the individual cells you want to update. Then, choose an action from the bottom bar or use the keyboard shortcuts.`}),`\n`,_jsx(_components.li,{children:`For a consecutive range of days: Click and hold on a cell, then drag your mouse across the nearby cells to select a range. Release the mouse and choose an action from the bottom bar or use the keyboard shortcuts.`}),`\n`]}),_jsx(Info,{children:_jsx(_components.p,{children:`Checking in multiple days is only available for habits with goal per day.`})}),_jsx(Heading,{level:`3`,id:`tracking-in-list-view`,children:`Tracking in List view`}),_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`List`}),` view provides a simple, focused list of your habits for a specific day. Here’s how you can check in or log progress value of your habit:`]}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Add Log: hover your mouse over a habit, an input field will appear, type a value in the box and press ‘Enter’ on your keyboard or click ☑ to save.`}),`\n`,_jsxs(_components.li,{children:[`Select \u0026 mark: click on a habit, then choose `,_jsx(_components.strong,{children:`Complete`}),`, `,_jsx(_components.strong,{children:`Skip`}),`, or `,_jsx(_components.strong,{children:`Fail`}),` from the action bar at the bottom of the view.`]}),`\n`,_jsx(_components.li,{children:`Select from action menu: right-click a habit, or hover on the habit and click the 3-dot menu button near the end, to get the action menu.`}),`\n`]}),_jsx(Heading,{level:`2`,id:`faqs-3`,children:`FAQs`}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to skip a week, month, or year?`})}),id:`how-to-skip-a-week-month-or-year`,children:[_jsx(_components.p,{children:`Currently, Habitify does not support mass-skipping or freezing streaks for an entire week or month at once.`}),_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Skip`}),` function is deliberately designed to handle short-term, daily unpredictability—like waking up sick or having an unexpected emergency—so you aren’t punished for a genuine off-day. However, habit formation is ultimately about consistent, present-day engagement. Allowing streaks to be frozen for weeks or months at a time would turn the streak into an artificial metric, rather than an accurate reflection of your actual momentum.`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to undo a progress log on a good habit?`})}),id:`how-to-undo-a-progress-log-on-a-good-habit`,children:[_jsxs(_components.p,{children:[`If the habit is marked with a status (Completed, Skipped, or Failed), right-click the cell and choose `,_jsx(_components.strong,{children:`Remove logs`}),`.`]}),_jsx(_components.p,{children:`If the habit is still in progress:`}),_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`Open its single progress view.`}),`\n`,_jsx(_components.li,{children:`Navigate to the top right corner, and click the sidebar toggle button.`}),`\n`,_jsxs(_components.li,{children:[`Switch to the `,_jsx(_components.strong,{children:`Log History`}),` tab.`]}),`\n`,_jsx(_components.li,{children:`Select the wrong log.`}),`\n`,_jsxs(_components.li,{children:[`Click `,_jsx(_components.strong,{children:`Delete`}),` in the bottom right corner.`]}),`\n`]})]}),_jsxs(Accordion,{title:_jsx(_Fragment,{children:_jsx(_components.strong,{className:`font-extrabold`,children:`How to edit a good habit?`})}),id:`how-to-edit-a-good-habit-2`,children:[_jsx(_components.p,{children:`To edit a good habit:`}),_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Open your habit list in `,_jsx(_components.strong,{children:`Grid`}),` layout.`]}),`\n`,_jsx(_components.li,{children:`Click on your habit to open its single progress view.`}),`\n`,_jsx(_components.li,{children:`Navigate to the top right corner, and click the\\xA0🖊 button.`}),`\n`]})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Good habits","description":null,"href":"/good-habits"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"How to create a good habit","slug":"how-to-create-a-good-habit","depth":2,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Details of a good habit","slug":"details-of-a-good-habit","depth":2,"children":[{"title":"Repeat","slug":"repeat","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Goal","slug":"goal","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Time of Day","slug":"time-of-day","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Area","slug":"area","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Reminders","slug":"reminders","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Checklist","slug":"checklist","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Start Date","slug":"start-date","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"End","slug":"end","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"}],"tabId":"%EF%A3%BF-ios"},{"title":"How a good habit shows in the list","slug":"how-a-good-habit-shows-in-the-list","depth":2,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"How to record progress of a good habit","slug":"how-to-record-progress-of-a-good-habit","depth":2,"children":[{"title":"Logging progress in Day view","slug":"logging-progress-in-day-view","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Smart buttons","slug":"smart-buttons","depth":4,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Right Swipe","slug":"right-swipe","depth":4,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Left Swipe","slug":"left-swipe","depth":4,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"Logging progress in Week view","slug":"logging-progress-in-week-view","depth":3,"children":[],"tabId":"%EF%A3%BF-ios"}],"tabId":"%EF%A3%BF-ios"},{"title":"FAQs","slug":"faqs","depth":2,"children":[],"tabId":"%EF%A3%BF-ios"},{"title":"How to create a good habit","slug":"how-to-create-a-good-habit-2","depth":2,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Details of a good habit","slug":"details-of-a-good-habit-2","depth":2,"children":[{"title":"Repeat","slug":"repeat-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Goal","slug":"goal-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Time of Day","slug":"time-of-day-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Area","slug":"area-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Reminders","slug":"reminders-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Checklist","slug":"checklist-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Start Date","slug":"start-date-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"End Condition","slug":"end-condition","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"}],"tabId":"%F0%9F%A4%96-android"},{"title":"How a good habit shows in Journal","slug":"how-a-good-habit-shows-in-journal","depth":2,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"How to record progress of a good habit","slug":"how-to-record-progress-of-a-good-habit-2","depth":2,"children":[{"title":"Logging progress in Day view","slug":"logging-progress-in-day-view-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Smart buttons","slug":"smart-buttons-2","depth":4,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Right Swipe","slug":"right-swipe-2","depth":4,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Left Swipe","slug":"left-swipe-2","depth":4,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"Logging progress in Week view","slug":"logging-progress-in-week-view-2","depth":3,"children":[],"tabId":"%F0%9F%A4%96-android"}],"tabId":"%F0%9F%A4%96-android"},{"title":"FAQs","slug":"faqs-2","depth":2,"children":[],"tabId":"%F0%9F%A4%96-android"},{"title":"How to create a good habit","slug":"how-to-create-a-good-habit-3","depth":2,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Details of a good habit","slug":"details-of-a-good-habit-3","depth":2,"children":[{"title":"Repeat","slug":"repeat-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Goal","slug":"goal-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Time of Day","slug":"time-of-day-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Start Date","slug":"start-date-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"End Condition","slug":"end-condition-2","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Reminders","slug":"reminders-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Area","slug":"area-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Checklist","slug":"checklist-3","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"}],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"How a good habit shows in the list","slug":"how-a-good-habit-shows-in-the-list-2","depth":2,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"How to record progress of a good habit","slug":"how-to-record-progress-of-a-good-habit-3","depth":2,"children":[{"title":"Tracking in Grid view","slug":"tracking-in-grid-view","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"Tracking in List view","slug":"tracking-in-list-view","depth":3,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"}],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"},{"title":"FAQs","slug":"faqs-3","depth":2,"children":[],"tabId":"%F0%9F%96%A5%EF%B8%8F-website-%26-desktop"}],"codeExamples":{}},"jsLinks":[],"subdomain":"habitify","siteName":"Habitify","title":"Good habits - Habitify","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/good-habits","matchLevel":0},"pt-BR":{"href":"/pt-BR/good-habits","matchLevel":1},"ja":{"href":"/ja/good-habits","matchLevel":1},"es":{"href":"/es/good-habits","matchLevel":1},"vi":{"href":"/vi/good-habits","matchLevel":1},"ru":{"href":"/ru/good-habits","matchLevel":1},"fr":{"href":"/fr/good-habits","matchLevel":1},"ko":{"href":"/ko/good-habits","matchLevel":1},"pl":{"href":"/pl/good-habits","matchLevel":1},"it":{"href":"/it/good-habits","matchLevel":1},"de":{"href":"/de/good-habits","matchLevel":1}}},"lastModified":"2026-11-05T10:29:00.137Z","originalFileLocation":"good-habits.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"application-name\" content=\"Habitify\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Good habits - Habitify\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Habitify\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.habitify.me/good-habits\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://habitify.mintlify.site/_mintlify/api/og/v2?division=Features\u0026amp;title=Good+habits\u0026amp;theme=962b6435550e12740bc4e387\u0026amp;signature=36d8f113e8339921dde8ffc5de2be77b619bb0db84f2146eeb822069917cff14\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Good habits - Habitify\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://habitify.mintlify.site/_mintlify/api/og/v2?division=Features\u0026amp;title=Good+habits\u0026amp;theme=962b6435550e12740bc4e387\u0026amp;signature=36d8f113e8339921dde8ffc5de2be77b619bb0db84f2146eeb822069917cff14\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/habitify/V_6sSIuXd9KCLw9s/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Habitify\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#164AF2\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.habitify.me/good-habits\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/good-habits.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://docs.habitify.me/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pt-BR\" href=\"https://docs.habitify.me/pt-BR/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ja\" href=\"https://docs.habitify.me/ja/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"es\" href=\"https://docs.habitify.me/es/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"vi\" href=\"https://docs.habitify.me/vi/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ru\" href=\"https://docs.habitify.me/ru/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"fr\" href=\"https://docs.habitify.me/fr/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"ko\" href=\"https://docs.habitify.me/ko/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"pl\" href=\"https://docs.habitify.me/pl/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"it\" href=\"https://docs.habitify.me/it/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"de\" href=\"https://docs.habitify.me/de/good-habits\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://docs.habitify.me/good-habits\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.habitify.me/#organization\",\"name\":\"Habitify\",\"url\":\"https://docs.habitify.me\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/habitify/6ubuIYTR9HqwJmST/images/Group3.png?fit=max\u0026auto=format\u0026n=6ubuIYTR9HqwJmST\u0026q=85\u0026s=19d2ca75b3476d732425d7ae3a079d41\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.habitify.me#website\",\"name\":\"Habitify\",\"url\":\"https://docs.habitify.me\",\"publisher\":{\"@id\":\"https://docs.habitify.me/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.habitify.me/good-habits#webpage\",\"url\":\"https://docs.habitify.me/good-habits\",\"name\":\"Good habits\",\"dateModified\":\"2026-11-05T10:29:00.137Z\",\"isPartOf\":{\"@id\":\"https://docs.habitify.me#website\"},\"breadcrumb\":{\"@id\":\"https://docs.habitify.me/good-habits#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.habitify.me/good-habits#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Habitify\",\"item\":\"https://docs.habitify.me\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Good habits\",\"item\":\"https://docs.habitify.me/good-habits\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.habitify.me/good-habits#article\",\"headline\":\"Good habits\",\"name\":\"Good habits\",\"url\":\"https://docs.habitify.me/good-habits\",\"mainEntityOfPage\":{\"@id\":\"https://docs.habitify.me/good-habits#webpage\"},\"dateModified\":\"2026-11-05T10:29:00.137Z\",\"publisher\":{\"@id\":\"https://docs.habitify.me/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.habitify.me#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Habitify\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"Habitify\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/good-habits.md","siteName":"Habitify","nav":{"global":null,"languages":[{"language":"en","tabs":[{"tab":"Documentation","icon":"life-ring","pages":[{"group":"Get Started","pages":[{"title":"Introduction","href":"/habitify-introduction"},{"title":"Quick Start","href":"/habitify-quick-start"},{"title":"Glossary","description":"Plain-language definitions of the terms you'll see across Habitify, grouped by topic: habits, statuses, features, stats, plans, AI and integrations.","icon":"book","href":"/glossary"}]},{"group":"Features","pages":[{"title":"Good habits","href":"/good-habits"},{"title":"Bad habits","description":null,"href":"/bad-habits"},{"title":"Journal","href":"/journal"},{"title":"Single progress","href":"/single-progress"},{"title":"Progress","href":"/overall-progress"},{"title":"Reflection","href":"/reflection"},{"title":"Circle","href":"/circle"},{"title":"Challenge","href":"/challenge"}]},{"group":"Tools","pages":[{"title":"Area","href":"/area"},{"title":"Reminder","href":"/reminder"},{"title":"Habit Gate","href":"/habit-gate"},{"title":"Note","href":"/note"},{"title":"Widget","href":"/widget"},{"title":"Task","href":"/task"},{"title":"Timer","href":"/timer"}]},{"group":"App Settings","pages":[{"title":"Off Mode","href":"/off-mode"},{"title":"App Behaviors","href":"/app-behavior"}]},{"group":"Automation","pages":[{"title":"Status Update","href":"/automation-status-update"},{"title":"Shortcuts","href":"/ios-shortcuts"},{"title":"NFC Tags","href":"/nfc-tags"},{"title":"Zapier \u0026 IFTTT","href":"/zapier-ifttt"}]},{"group":"Integration","pages":[{"title":"Google Calendar","href":"/google-calendar-integration"},{"title":"Outlook Calendar","href":"/outlook-calendar-integration"},{"title":"Apple Calendar","href":"/apple-calendar-integration"},{"title":"Apple Health","href":"/apple-health-integration"},{"title":"Health Connect","href":"/health-connect-integration"},{"title":"Strava","href":"/strava-integration"},{"title":"Fitbit","href":"/fitbit-integration"},{"title":"Rescue Time","href":"/rescue-time-integration"},{"title":"Screen Time","href":"/screen-time-integration"}]},{"group":"Habitify MCP \u0026 AI","pages":[{"title":"Habitify MCP","href":"/habitify-mcp"},{"title":"Habi AI","href":"/habi-ai"},{"title":"Siri AI","href":"/siri-ai"}]},{"group":"Plans \u0026 Billing","pages":[{"title":"Plans \u0026 Payments","href":"/plans"},{"title":"Purchases \u0026 Billings","href":"/billings"},{"title":"Habitify Family","href":"/habitify-family"},{"title":"Habitify Team","href":"/habitify-team"},{"title":"Habitify Student","href":"/habitify-student"}]},{"group":"Account \u0026 Data","pages":[{"title":"Account","href":"/manage-account"},{"title":"Data","href":"/manage-data"}]}]},{"tab":"API","icon":"rectangle-api","pages":[{"title":"API","href":"/api-reference/habits/get-all-habits"}]},{"tab":"Changelog","icon":"bullhorn","href":"https://feedback.habitify.me/changelog"}]},{"language":"pt-BR","pages":[{"title":"pt-BR","href":"/pt-BR/good-habits"}]},{"language":"ja","pages":[{"title":"ja","href":"/ja/good-habits"}]},{"language":"es","pages":[{"title":"es","href":"/es/good-habits"}]},{"language":"vi","pages":[{"title":"vi","href":"/vi/good-habits"}]},{"language":"ru","pages":[{"title":"ru","href":"/ru/good-habits"}]},{"language":"fr","pages":[{"title":"fr","href":"/fr/good-habits"}]},{"language":"ko","pages":[{"title":"ko","href":"/ko/good-habits"}]},{"language":"pl","pages":[{"title":"pl","href":"/pl/good-habits"}]},{"language":"it","pages":[{"title":"it","href":"/it/good-habits"}]},{"language":"de","pages":[{"title":"de","href":"/de/good-habits"}]}]},"basePath":"","title":"Good habits - Habitify","buildId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","deploymentId":"dpl_Fyv1NbzwP68g2bEH2Roy98uY1zmE","dynamics":["a74be98ba7"],"chunks":["zoom-image-lightbox-BbK2OBGL.js","lightbox-handle-r17bVUz3.js"]}