Blog

The Power of Custom Lists: Advanced Filtering for Task Views

2026-01-22 · 12 min read · To-Track Team

Your brain works in contexts, not chaos. When you're at work, you need to see work tasks—not grocery lists. When it's Saturday, you want personal projects—not office assignments. When you're waiting for others, you need tasks blocked on feedback—not deep focus work.

Context switching is cognitive overhead. Every time you scan your entire task list to find relevant items, you're wasting mental energy. The solution? Custom filtered lists that show exactly what matters in your current context.

To-Track's list system goes far beyond simple tag filtering. With six filter types (tags, specific tasks, states, state categories, repeat types, and date ranges) combined using flexible AND/OR logic, you can create surgical views for any scenario:

  • "Work tasks that are urgent AND blocked" (to prioritize unblocking)
  • "Personal tasks due this week AND recurring" (to batch habit completion)
  • "Tasks in REVIEW state OR IN-TESTING state" (to track items awaiting approval)
  • "Tasks starting today through next Friday with high priority tag" (weekly sprint view)

This guide shows you how to design custom lists that eliminate noise, surface relevant work, and transform your task manager into a context-aware productivity system.

The Six Filter Types

To-Track supports six distinct filter dimensions:

1. Tags (SelectedTag)

Filter tasks by attached tags using OR logic (task matches if it has ANY selected tag).

Use cases:

  • Show tasks tagged "work" OR "client" OR "urgent"
  • Filter by project tags: "website-redesign" OR "mobile-app"
  • Context-based: "@office" OR "@computer" OR "@phone" (GTD style)

Special feature: "No Tag" toggle to show tasks without any tags.

2. Tasks (SelectedTask)

Filter to show only specific tasks by their IDs using OR logic.

Use cases:

  • Pin important tasks to a list: "Critical tasks I'm monitoring"
  • Create project dashboard: "All tasks for Q1 goals"
  • Focus list: "Today's top 3 priorities"

3. States (SelectedState)

Filter by individual task states (TODO, IN-PROGRESS, BLOCKED, custom states) using OR logic.

Use cases:

  • Show tasks in BLOCKED OR WAITING states (to review dependencies)
  • Filter for IN-PROGRESS OR IN-REVIEW (actively worked on + awaiting approval)
  • Display all DONE tasks from this week (completed work review)

Granular vs. Category: Unlike state categories (OPEN/ACTIVE/CLOSED), state filtering lets you select specific states (e.g., show BLOCKED but not other ACTIVE states).

4. State Categories (SelectedStateCategory)

Filter by broader state groupings using OR logic:

  • OPEN (0): Not started yet (TODO, BACKLOG, etc.)
  • ACTIVE (1): In progress (IN-PROGRESS, REVIEW, BLOCKED, etc.)
  • CLOSED (2): Finished (DONE, CANCELLED, ARCHIVED, etc.)

Use cases:

  • Show only ACTIVE tasks (everything in progress)
  • Filter for OPEN tasks (backlog to prioritize)
  • Display CLOSED tasks (completed work archive)

Default: All three categories selected (shows all tasks regardless of state).

5. Repeat Types (SelectedRepeat)

Filter by recurrence pattern using OR logic:

  • One-time (onetime): Non-recurring tasks (rrule IS NULL)
  • Any-time (anytime): Flexible recurring tasks (rrule = '1')
  • Interval (interval): Scheduled recurring (rrule IS NOT NULL AND rrule != '1')

Use cases:

  • Show only one-time tasks (projects, appointments)
  • Filter for any-time habits (flexible daily routines)
  • Display scheduled recurring tasks (fixed meetings, medication)

6. Date Ranges (SelectedDateRange)

Filter by start_time and end_time using relative or absolute date ranges.

Range structure:

  • From: position (today/past/next) + amount (1-999) + unit (hour/day/week/month/year)
  • To: Same structure

Examples:

  • "From past 1 week to today" = tasks starting in the last week
  • "From today to next 2 weeks" = tasks starting in the next 2 weeks
  • "From past 1 month to next 1 month" = tasks within a 2-month window around today

Use cases:

  • Upcoming tasks: "From today to next 7 days"
  • Overdue tasks: "From past 30 days to today" + ACTIVE states
  • Long-term planning: "From next 1 month to next 3 months"

Filter Combination Logic

The power of To-Track's lists comes from combining multiple filter types:

AND Logic Between Filter Types

Different filter types use AND logic (tasks must match ALL active filters).

Example:

  • Tags: "work"
  • States: ACTIVE category
  • Date ranges: "From today to next 7 days"

Result: Tasks that are:

  • Tagged "work" AND
  • In an ACTIVE state AND
  • Starting within the next 7 days

OR Logic Within Filter Types

Within a single filter type, tasks match if they have ANY selected option.

Example:

  • Tags: "work" OR "client" OR "urgent"
  • States: BLOCKED OR WAITING

Result: Tasks that are:

  • Tagged "work" OR "client" OR "urgent" (at least one) AND
  • In BLOCKED state OR WAITING state

Empty Filters Are Ignored

If you don't select any options for a filter type, it's ignored (no constraint added).

Example:

  • Tags: "work"
  • States: (none selected)
  • Date ranges: (none selected)

Result: All tasks tagged "work" regardless of state or dates.

Real-World List Examples

Example 1: Weekly Sprint View

Goal: See work tasks starting this week that are not yet complete.

Filters:

  • Tags: "work"
  • State Categories: OPEN, ACTIVE (exclude CLOSED)
  • Date Ranges (start_time): "From today to next 7 days"

Result: Work tasks scheduled to start this week that are still in progress or not started.

Use: Monday morning sprint planning—what's on deck for the week?

Example 2: Blocked Tasks Requiring Unblocking

Goal: Find all tasks waiting on external dependencies so you can follow up.

Filters:

  • States: BLOCKED, WAITING
  • (No other filters)

Result: Any task in BLOCKED or WAITING state, regardless of tags/dates.

Use: Friday afternoon "unblock tasks" review session.

Example 3: Today's Flexible Habits

Goal: View daily habits (any-time recurring) to complete today.

Filters:

  • Repeat Types: Any-time
  • State Categories: OPEN, ACTIVE (exclude CLOSED)

Result: Flexible recurring tasks that reset daily and haven't been completed yet today.

Use: Morning routine checklist—which habits are pending?

Example 4: Personal Tasks Due This Weekend

Goal: See personal tasks ending this Saturday or Sunday.

Filters:

  • Tags: "personal"
  • Date Ranges (end_time): "From today to next 3 days" (if today is Thursday)
  • State Categories: OPEN, ACTIVE

Result: Personal tasks with end times this weekend that aren't complete.

Use: Thursday evening weekend planning.

Example 5: High-Priority Work in Review

Goal: Surface work tasks awaiting approval to expedite review.

Filters:

  • Tags: "work", "urgent"
  • States: IN-REVIEW, CODE-REVIEW, APPROVAL-PENDING

Result: High-priority work tasks currently awaiting review.

Use: Daily standup—which tasks need reviewer attention?

Example 6: Overdue Active Tasks

Goal: Find tasks that should have started already but are still in progress.

Filters:

  • State Categories: ACTIVE
  • Date Ranges (start_time): "From past 30 days to yesterday"

Result: Tasks that started in the past month but aren't finished yet (potentially overdue).

Use: Monthly review—which tasks are dragging on?

Example 7: Next Month's Scheduled Recurring Tasks

Goal: Plan ahead by seeing which scheduled recurring tasks are coming up.

Filters:

  • Repeat Types: Interval (scheduled)
  • Date Ranges (start_time): "From next 1 month to next 2 months"

Result: Scheduled recurring tasks starting next month.

Use: Long-term planning and capacity estimation.

Creating Custom Lists

Step 1: Navigate to Lists Page

Swipe left from Todo List Page or tap the list icon in the navigation bar.

Step 2: Tap Add (+) Button

Opens the "Create List" page.

Step 3: Name Your List

Enter a custom name or leave blank to auto-generate from filters.

Auto-generated names (if blank):

  • "work • ACTIVE" (tag + state category)
  • "2 tags • 1 state • Any time" (filter summary)

Custom names:

  • "Weekly Sprint"
  • "Blocked Tasks to Unblock"
  • "Morning Routine"
  • "High-Priority Work"

Step 4: Add Filters

Tags Filter

  1. Tap "Select Tag" button (or toggle "No Tag" for untagged tasks)
  2. Search field focuses with "Search tags..." placeholder
  3. Type to filter available tags, tap to select
  4. Selected tags appear as chips above search
  5. Tap chip to remove

Tasks Filter

  1. Tap "Select Task" button
  2. Search field focuses with "Search tasks..." placeholder
  3. Type task name to filter
  4. Tap task to select
  5. Selected tasks appear in list with delete buttons

States Filter

  1. Tap "Select State" button
  2. Search field focuses with "Search states..." placeholder
  3. Type to filter available states
  4. Tap state to select
  5. Selected states appear in list

State Categories Filter

Two interfaces:

  1. Toggle buttons: Tap OPEN, ACTIVE, or CLOSED chips to toggle selection
  2. Search suggestions: Use search field with "Search state categories..." mode

Repeat Types Filter

Two interfaces:

  1. Toggle buttons: Tap "One time", "Any time", or "Interval" chips to toggle
  2. Search suggestions: Available via search field

Date Range Filters

  1. Tap "Add Start Time Filter" or "Add End Time Filter"
  2. Modal sheet opens with DateRangePickerView
  3. Configure "From" period:
    • Position: today / past / next
    • Amount: 1-999 (hidden if position = "today")
    • Unit: hour/day/week/month/year (hidden if position = "today")
  4. Configure "To" period (same format)
  5. Preview shows human-readable description: "from past 2 weeks to today"
  6. Tap "Confirm" to add filter
  7. Multiple date range filters use OR logic (task matches if it fits ANY range)

Step 5: Review Filter Summary

As you add filters, the page displays a summary:

  • Tag chips (if any selected)
  • Task list (if any selected)
  • State list (if any selected)
  • Category toggles (highlighted if selected)
  • Repeat type toggles (highlighted if selected)
  • Date range filters (each as a list item with description)

Step 6: Save List

Tap "Save" to create the list. It appears on the Lists Page.

Editing and Managing Lists

Editing a List

  1. Long-press on list card
  2. Select "Edit" from pull-down menu
  3. Modify name and filters
  4. Tap "Update" to save changes

Renaming a List

  1. Long-press on list card
  2. Select "Change Name"
  3. Modern popup dialog appears with:
    • Cancel button
    • Auto button (generates name from filters)
    • Save button (keeps manual name)
  4. Edit name or tap "Auto" to generate from current filters

Deleting a List

  1. Long-press on list card
  2. Select "Delete"
  3. Confirmation dialog appears
  4. Confirm to permanently remove

Reordering Lists

  1. Tap reorder icon in Lists Page navigation bar
  2. Drag lists by grip handles to reorder
  3. Tap "Done" to exit reorder mode
  4. List order persists (stored in database "order" column)

Advanced: AI List Generation (Pro Feature)

Skip manual filter configuration—describe what you want in natural language and let AI build the list.

How It Works

  1. Navigate to Create List Page
  2. Tap "Create with AI" at bottom
  3. Enter prompt describing desired list
  4. AI generates filter configuration
  5. Review and save

Example Prompts

Prompt: "Show me all high-priority work tasks due this month"

AI-generated filters:

  • Tags: "work", "high-priority"
  • Date ranges (end_time): "From today to next 30 days"

Prompt: "Tasks I'm waiting on others for"

AI-generated filters:

  • States: BLOCKED, WAITING, IN-REVIEW

Prompt: "Personal habits I do daily without fixed times"

AI-generated filters:

  • Tags: "personal"
  • Repeat types: Any-time

Prompt: "Work starting next week that's not done yet"

AI-generated filters:

  • Tags: "work"
  • Date ranges (start_time): "From next 7 days to next 14 days"
  • State categories: OPEN, ACTIVE

Best Practices

1. Create Lists for Recurring Contexts

Don't recreate filters daily. Save lists for contexts you revisit:

  • "Morning Routine" (any-time tasks to complete daily)
  • "Weekly Work Sprint" (work tasks starting this week)
  • "Blocked Tasks" (review dependencies weekly)

2. Use Tag Prefixes for Grouping

Prefix tags to organize filters:

  • Context: "@office", "@home", "@computer", "@phone"
  • Projects: "proj-website", "proj-mobile-app"
  • Clients: "client-acme", "client-techcorp"
  • Priority: "p1-urgent", "p2-high", "p3-medium"

Lists can filter by prefix patterns more easily.

3. Combine State + Date for Overdue Views

Overdue tasks:

  • State categories: OPEN, ACTIVE (exclude CLOSED)
  • Date ranges (end_time): "From past 30 days to yesterday"

Shows tasks that should be done but aren't.

4. Leverage Date Ranges for Rolling Views

Instead of static dates ("Tasks due Jan 15"), use relative ranges:

  • "This Week": From today to next 7 days
  • "Next Month": From next 30 days to next 60 days
  • "Recently Completed": (CLOSED state) + (Date range: past 7 days to today)

Lists stay relevant as time passes.

5. Separate "No Tag" Tasks for Cleanup

Create a list:

  • No Tag filter: ON
  • State categories: OPEN, ACTIVE

Use: Weekly review—which tasks lack tags and need categorization?

Comparing To-Track Lists to Competitors

Feature To-Track Todoist Things 3 Notion
Filter types 6 (tags, tasks, states, categories, repeats, date ranges) 3 (tags, dates, priority) 2 (tags, dates) ∞ (database views)
AND/OR logic ✅ AND between types, OR within ⚠️ Limited ❌ No ✅ Full
Relative dates ✅ "From past 1 week to today" ⚠️ "today", "7 days" ⚠️ "today", "upcoming" ✅ Formulas
State filtering ✅ Granular + categories ❌ No (fixed states) ❌ No ⚠️ Via status field
Recurrence filtering ✅ One-time, any-time, interval ❌ No ❌ No ⚠️ Manual
No-tag filter ✅ Toggle ❌ No ❌ No ⚠️ Empty field filter
Multiple date ranges ✅ OR logic ❌ Single range ❌ No ✅ Multiple filters
AI list generation ✅ Natural language ❌ No ❌ No ❌ No

Verdict: To-Track's filtering flexibility exceeds dedicated task managers and rivals Notion's database views while staying simpler.

Conclusion: See What Matters, When It Matters

Your task list isn't one monolithic queue—it's dozens of contexts competing for attention. Work vs. personal. Urgent vs. someday. Blocked vs. actionable. Today vs. next month.

Custom filtered lists slice your tasks into relevant views:

  • See only what matters now (today's work + high priority)
  • Hide what's irrelevant (personal tasks during work hours)
  • Surface actionable items (not blocked, not waiting on others)
  • Plan future work (next week's scheduled tasks)

To-Track's six filter types—tags, tasks, states, categories, repeats, date ranges—combine using AND/OR logic to create surgical precision. Want "work tasks in BLOCKED state due next week"? Three filters, done. Want "personal any-time habits not completed yet today"? Also three filters.

Stop scrolling through irrelevant tasks. Start using custom lists to see exactly what you need, when you need it.

FAQ

Q: How many lists can I create? A: Unlimited. Create as many filtered views as you need.

Q: Do lists affect the underlying tasks? A: No—lists are just filtered views. Deleting a list doesn't delete tasks; it only removes the view.

Q: Can I share lists with others? A: Not currently (To-Track is individual-focused). Export list definitions (query JSON) for manual recreation by others.

Q: What's the difference between state filtering and category filtering? A: State filtering is granular (show only BLOCKED tasks). Category filtering is broad (show all ACTIVE tasks, which includes BLOCKED, IN-PROGRESS, REVIEW, etc.).

Q: Can I filter by multiple date ranges? A: Yes! Add multiple start/end time range filters. They use OR logic—tasks match if they fit ANY range.

Q: What happens if I select all state categories? A: It shows all tasks regardless of state (equivalent to no state filtering).

Q: Can I save searches? A: Yes—that's what lists are. Create a list with filters, and it's saved permanently for reuse.

Q: How do I filter for tasks WITHOUT a specific tag? A: Use the "No Tag" toggle to show tasks with no tags at all. To exclude a specific tag (show tasks that don't have "work" tag), that's not currently supported—use separate lists.


Ready to filter like a pro? Download To-Track and create custom lists that surface exactly what you need to see.

Try To-Track free

Offline-first tasks, custom states, time tracking. No account required.

Download for iOS