diff --git a/lib/marty/data_conversion.rb b/lib/marty/data_conversion.rb
index <HASH>..<HASH> 100644
--- a/lib/marty/data_conversion.rb
+++ b/lib/marty/data_conversion.rb
@@ -165,6 +165,8 @@ class Marty::DataConversion
     ctypes = col_types(klass)
     assoc  = associations(klass)
 
+    raise "bad row (extra columns?) -- #{row}" if row.has_key?(nil)
+
     key_groups = row.keys.group_by {|x| x.split('__').first}
 
     key_groups.each_with_object({}) do
better exception raised when convert_row gets extra/unexpected columns