public function needsToBeCaptured()
    {
        if (!$this->shouldBeCaptured()) {
            return false;
        }

        // computes the most recently completed period
        $mostRecentPeriod = $this->nthPreviousPeriod(1);

        // computes the start date for the most recently completed period
        $latestStartDate = date('Y-m-d', $mostRecentPeriod[ 'start' ]);

        // check if the metric has been saved before
        return Statistic::totalRecords([
            'metric' => $this->key(),
            'day' => $latestStartDate, ]) == 0;
    }