Andreas Ranitzsch
03/03/2026, 6:14 PMkapa.ai
03/03/2026, 6:15 PMkapa.ai
03/03/2026, 6:15 PMAndreas Ranitzsch
03/03/2026, 6:44 PMkapa.ai
03/03/2026, 6:44 PMkapa.ai
03/03/2026, 6:44 PMelementary.volume_anomalies test configured on daily buckets, with a 1‑day detection period and ignore_small_changes set to 50% drop. This will effectively look at “yesterday” (last full 24h bucket) and alert if the row count drops by ≥50% vs. history.
Example `schema.yml`:
models:
- name: customers
config:
elementary:
timestamp_column: created_at # when the customer was created
data_tests:
- elementary.volume_anomalies:
arguments:
# Count new customers per day
time_bucket:
period: day
count: 1
# Detect anomalies only in the most recent full day (yesterday)
detection_period:
period: day
count: 1
# Use recent history as training window (e.g. last 14 days)
training_period:
period: day
count: 14
# Only care about drops, and only if >= 50%
anomaly_direction: drop
ignore_small_changes:
drop_failure_percent_threshold: 50
Key points from the docs:
• volume_anomalies monitors row count per time bucket; with time_bucket: {period: day, count: 1} it counts new rows per day. [Volume anomalies; time_bucket]
• The test “only runs on completed time buckets”, so with daily buckets, if you run it during today it will evaluate yesterday’s bucket (i.e., the last full 24h). [Volume anomalies]
• ignore_small_changes.drop_failure_percent_threshold: 50 ensures the test only fails if the drop is at least 50% compared to the expected value from the training period. [ignore_small_changes example]
If you also have strong day‑of‑week patterns, you can add:
seasonality: day_of_week
so each day is compared to previous same weekdays. [Seasonality usage] 👍 0 button 👎 0 button ℹ️ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.Andreas Ranitzsch
03/03/2026, 7:11 PMkapa.ai
03/03/2026, 7:11 PMkapa.ai
03/03/2026, 7:11 PMAndreas Ranitzsch
03/05/2026, 6:40 PMkapa.ai
03/05/2026, 8:37 PMelementary.volume_anomalies does, how it buckets data over time, training vs. detection period, and how it only evaluates completed time buckets. [Volume anomalies]
• Full configuration reference for volume_anomalies – all supported arguments (e.g. timestamp_column, time_bucket, training_period, detection_period, anomaly_sensitivity, anomaly_direction, ignore_small_changes, fail_on_zero, etc.) with YAML examples. [volume_anomalies config; Anomaly params]
• Time bucketing details – how time_bucket works (hour/day/week/month, count), and how it interacts with training/detection periods. [time_bucket]
Those three sections together cover the different ways you can use and tune volume anomaly tests. 👍 0 button 👎 0 button ℹ️ Tip: Mention @elementary.ai in the thread for follow-ups or DM the app for 1-to-1 help.