diff --git a/content_complete.module b/content_complete.module
index bfb1c8f..b9a9551 100755
--- a/content_complete.module
+++ b/content_complete.module
@@ -285,7 +285,35 @@ function content_complete_get_data($node, $recalculate = FALSE) {
     $fields = content_complete_get_fields($node->type); // Grab all fields for that content type
     $tagged_fields = content_complete_get_tagged_fields($node->type); // Fields tagged for completeness (can be empty)
     $fields_values = content_complete_get_fields_values($node); // Completed fields (can be empty)
-    
+
+    //If using conditional fields, ignore fields that are not currently
+    //available for editing when assessing completeness
+    if (module_exists('conditional_fields')) {
+
+      // we want to get a list of fields that are not present on form, based on the value of their
+      // conditional_fields "parent", and subtract that from the $tagged_fields array.
+      $dependencies = conditional_fields_load_dependencies('node', $node->type);
+      $inactive_states = array('!visible', 'disabled');
+      $node_vars = get_object_vars($node);
+
+      //for each dependency, get the value of the parent fields and evaluate with conditional_fields_evaluate_dependency
+      foreach ($dependencies['dependents'] as $dependent_field_name => $dependency_details) {
+
+	//is this field currently visible?
+	foreach ($dependency_details as $dep_detail) {
+	  $dependee_name = $dep_detail['dependee'];
+          $dependee_field = field_get_items('node', $node, $dependee_name);
+          $values = $dependee_field[0]['value'];
+	  $options = $dep_detail['options'];
+	   $field_inactive = ($options['state'] == '!visible' && conditional_fields_evaluate_dependency('view', $values, $options))
+				|| ($options['state'] == 'visible' && !conditional_fields_evaluate_dependency('view', $values, $options));
+	  if ($field_inactive) {
+	    unset($tagged_fields[array_search($dependent_field_name, $tagged_fields)]);
+	  }
+	}
+      }
+    }
+
     $percent = 0;
     $complete = 0;
     $incomplete = 0;
