Skip to content

Support per-keyword rank tracking intervals #37

Description

@bensenescu

Problem

Rank Tracking schedules checks at the domain/config level today. Users want to set different check intervals per keyword so high-priority terms can be tracked more often without spending credits on every keyword at the same cadence.

Evidence

  • User feedback: "I like the rank tracker. I would love to see a feature added to the rank tracker through which I can set a track interval per keyword instead of per domain."

Implementation check

Checked the OpenSEO repo on main (90a04d18). Relevant files:

  • src/db/app.schema.ts: scheduleInterval / nextCheckAt live on rankTrackingConfigs; rankTrackingKeywords has no schedule fields.
  • src/server.ts: cron finds due configs, advances config nextCheckAt, then schedules the whole config.
  • src/server/features/rank-tracking/services/RankTrackingService.ts and src/server/workflows/RankCheckWorkflow.ts: subset checks via keywordIds already exist.

Suggested direction

Keep the domain/config interval as the default. Add optional per-keyword overrides, e.g. inherit default, daily, weekly, or manual/paused.

Acceptance criteria

  • Existing trackers behave the same when no keyword overrides are set.
  • Users can set/reset interval overrides for individual or selected keywords.
  • Scheduled checks only run keywords due under their effective interval.
  • UI shows each keyword's effective interval and next scheduled check.
  • Tests cover inherited intervals, overrides, due-keyword selection, and subset runs.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status:spec-firstNeeds spec, design proposal, research note, or POC before implementationtype:enhancementImprovement or extension to an existing feature or workflow

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions