diff --git a/src/sqlfluff/rules/std.py b/src/sqlfluff/rules/std.py
index a11d1cd1..135be2a4 100644
--- a/src/sqlfluff/rules/std.py
+++ b/src/sqlfluff/rules/std.py
@@ -2101,3 +2101,18 @@ class Rule_L029(BaseCrawler):
             # Actually lint
             if segment.raw.upper() in dialect.sets('unreserved_keywords'):
                 return LintResult(anchor=segment)
+
+
+@std_rule_set.register
+class Rule_L030(Rule_L010):
+    """Inconsistent capitalisation of function names.
+
+    The functionality for this rule is inherited from :obj:`Rule_L010`.
+
+    Args:
+        capitalisation_policy (:obj:`str`): The capitalisation policy to
+            enforce. One of 'consistent', 'upper', 'lower', 'capitalise'.
+
+    """
+
+    _target_elems = (('name', 'function_name'),)

diff --git a/test/rules_std_test.py b/test/rules_std_test.py
index b4c81976..f3b66520 100644
--- a/test/rules_std_test.py
+++ b/test/rules_std_test.py
@@ -174,6 +174,10 @@ def assert_rule_pass_in_sql(code, sql, configs=None):
     ('L029', 'fail', 'SELECT 1 as parameter', None, None),
     ('L029', 'pass', 'SELECT parameter', None, None),  # should pass on default config as not alias
     ('L029', 'fail', 'SELECT parameter', None, {'rules': {'L029': {'only_aliases': False}}}),
+    # Inconsistent capitalisation of functions
+    ('L030', 'fail', 'SELECT MAX(id), min(id) from table', 'SELECT MAX(id), MIN(id) from table', None),
+    ('L030', 'fail', 'SELECT MAX(id), min(id) from table', 'SELECT max(id), min(id) from table',
+     {'rules': {'L030': {'capitalisation_policy': 'lower'}}})
 ])
 def test__rules__std_string(rule, pass_fail, qry, fixed, configs):
     """Test that a rule passes/fails on a given string.

Are functions not treated as keywords ?
Not an issue, more like a question. With
```
[sqlfluff:rules:L010]
capitalisation_policy = lower
```
using sqlfluff fix --rules L010 on
```sql
SELECT MAX(id) from table
```
becomes
```sql
select MAX(id) from table
```
Shouldn't `MAX` be also lower cased ?
test/rules_std_test.py::test__rules__std_string[L030-fail-SELECT
test/rules_std_test.py::test__rules__std_string[L001-fail-SELECT test/rules_std_test.py::test__rules__std_string[L002-fail- test/rules_std_test.py::test__rules__std_string[L003-fail- test/rules_std_test.py::test__rules__std_string[L004-pass- test/rules_std_test.py::test__rules__std_string[L004-pass-\t\tSELECT test/rules_std_test.py::test__rules__std_string[L004-fail- test/rules_std_test.py::test__rules__std_string[L005-fail-SELECT test/rules_std_test.py::test__rules__std_string[L008-pass-SELECT test/rules_std_test.py::test__rules__std_string[L008-fail-SELECT test/rules_std_test.py::test__rules__std_string[L014-pass-SELECT test/rules_std_test.py::test__rules__std_string[L015-fail-SELECT test/rules_std_test.py::test__rules__std_string[L015-pass-SELECT test/rules_std_test.py::test__rules__std_string[L014-fail-SELECT test/rules_std_test.py::test__rules__std_string[L010-fail-SELECT test/rules_std_test.py::test__rules__std_string[L006-pass-SELECT test/rules_std_test.py::test__rules__std_string[L016-pass-SELECT test/rules_std_test.py::test__rules__std_string[L016-fail-SELECT test/rules_std_test.py::test__rules__std_string[L016-fail- test/rules_std_test.py::test__rules__std_string[L010-fail-SeLeCt test/rules_std_test.py::test__rules__std_string[L006-pass-select\n test/rules_std_test.py::test__rules__std_string[L003-pass-SELECT\n test/rules_std_test.py::test__rules__std_string[L019-fail-SELECT\n test/rules_std_test.py::test__rules__std_string[L019-pass-SELECT\n test/rules_std_test.py::test__rules__std_string[L003-pass-SELECT test/rules_std_test.py::test__rules__std_string[L003-fail-SELECT test/rules_std_test.py::test__rules__std_string[L023-fail-WITH test/rules_std_test.py::test__rules__std_string[L024-fail-select test/rules_std_test.py::test__rules__std_string[L024-pass-select test/rules_std_test.py::test__rules__std_string[L026-pass-SELECT test/rules_std_test.py::test__rules__std_string[L026-fail-SELECT test/rules_std_test.py::test__rules__std_string[L028-fail-SELECT test/rules_std_test.py::test__rules__std_string[L028-pass-SELECT test/rules_std_test.py::test__rules__std_string[L025-fail-SELECT test/rules_std_test.py::test__rules__std_string[L029-pass-CREATE test/rules_std_test.py::test__rules__std_string[L029-fail-CREATE test/rules_std_test.py::test__rules__std_string[L029-fail-SELECT test/rules_std_test.py::test__rules__std_string[L029-pass-SELECT test/rules_std_test.py::test__rules__std_file[L001-test/fixtures/linter/indentation_errors.sql-violations0] test/rules_std_test.py::test__rules__std_file[L002-test/fixtures/linter/indentation_errors.sql-violations1] test/rules_std_test.py::test__rules__std_file[L003-test/fixtures/linter/indentation_errors.sql-violations2] test/rules_std_test.py::test__rules__std_file[L004-test/fixtures/linter/indentation_errors.sql-violations3] test/rules_std_test.py::test__rules__std_file[L005-test/fixtures/linter/whitespace_errors.sql-violations4] test/rules_std_test.py::test__rules__std_file[L019-test/fixtures/linter/whitespace_errors.sql-violations5] test/rules_std_test.py::test__rules__std_file[L008-test/fixtures/linter/whitespace_errors.sql-violations6] test/rules_std_test.py::test__rules__std_file[L006-test/fixtures/linter/operator_errors.sql-violations7] test/rules_std_test.py::test__rules__std_file[L007-test/fixtures/linter/operator_errors.sql-violations8] test/rules_std_test.py::test__rules__std_file[L006-test/fixtures/linter/operator_errors_negative.sql-violations9] test/rules_std_test.py::test__rules__std_file[L003-test/fixtures/linter/indentation_error_hard.sql-violations10] test/rules_std_test.py::test__rules__std_file[L003-test/fixtures/linter/indentation_error_contained.sql-violations11] test/rules_std_test.py::test__rules__std_file[L003-test/fixtures/linter/block_comment_errors.sql-violations12] test/rules_std_test.py::test__rules__std_file[L016-test/fixtures/linter/block_comment_errors.sql-violations13] test/rules_std_test.py::test__rules__std_file[L016-test/fixtures/linter/block_comment_errors_2.sql-violations14] test/rules_std_test.py::test__rules__std_file[L027-test/fixtures/linter/column_references.sql-violations15] test/rules_std_test.py::test__rules__std_file[L026-test/fixtures/linter/column_references.sql-violations16] test/rules_std_test.py::test__rules__std_file[L025-test/fixtures/linter/column_references.sql-violations17] test/rules_std_test.py::test__rules__std_file[L021-test/fixtures/linter/select_distinct_group_by.sql-violations18] test/rules_std_test.py::test__rules__std_file[L006-test/fixtures/linter/operator_errors_ignore.sql-violations19] test/rules_std_test.py::test__rules__std_L003_process_raw_stack