diff --git a/lib/Site/HWClock.pm b/lib/Site/HWClock.pm
new file mode 100644
index 0000000000000000000000000000000000000000..4fcaf4fe1856c88ee87479c608965633ed70dd7d
--- /dev/null
+++ b/lib/Site/HWClock.pm
@@ -0,0 +1,64 @@
+package Site::HWClock;
+
+use strict;
+use warnings;
+
+use base 'Resmon::Module';
+
+use Time::HiRes;
+use Resmon::ExtComm qw(run_command);
+
+=pod
+
+=head1 NAME
+
+Site::HWClock - check HWClock status
+
+=head1 SYNOPSIS
+
+ Site::HWClock {
+    local : noop
+ }
+
+=head1 DESCRIPTION
+
+This module retrieves HWClock value and compares to System clock statistics.
+
+=head1 CONFIGURATION
+
+=over
+
+=item check_name
+
+Arbitrary name of the check.
+
+=head1 METRICS
+
+=over
+
+=item hwclock (time)
+
+=item system (time)
+
+=item diff (time)
+
+=back
+
+=cut
+
+sub handler {
+    my $self = shift;
+    my $config = $self->{'config'};
+    my $now = Time::HiRes::time();
+    my $rtc = qx(date +%s.%N -d "`hwclock -r`");
+    chomp $rtc;
+
+    return {
+      "hwclock" => [$rtc, "%F"],
+      "system"  => [$now, "%F"],
+      "diff"    => [$now - $rtc, "%F"]
+    };
+};
+
+1;
+