diff --git a/simplenews_scheduler.module b/simplenews_scheduler.module
index 7b0eee2..d9e5402 100644
--- a/simplenews_scheduler.module
+++ b/simplenews_scheduler.module
@@ -613,6 +613,58 @@ function simplenews_scheduler_node_page($node) {
   return $output;
 }
 
+
+/**
+ * Implements hook_token_info().
+ */
+function simplenews_scheduler_token_info() {
+  // Random tokens.
+  $info['types']['simplenews-scheduler'] = array(
+    'name' => t('Simplenews Scheduler'),
+    'description' => ('Tokens related to scheduled newsletter.'),
+  );
+  $info['tokens']['simplenews-scheduler']['number'] = array(
+    'name' => t('Number'),
+    'description' => t('Edition number'),
+  );
+
+  return $info;
+}
+
+/**
+ * Implements hook_tokens().
+ */
+function simplenews_scheduler_tokens($type, $tokens, array $data = array(), array $options = array()) {
+  $replacements = array();
+
+  // Random tokens.
+  if ($type == 'simplenews-scheduler') {
+    foreach ($tokens as $name => $original) {
+      switch ($name) {
+        // we are passed the original newsletter node ID here during _simplenews_scheduler_new_edition()
+        case 'number':
+          if(!empty($data['node'])) {
+            $count = simplenews_scheduler_get_newsletter_count($data['node']->nid);
+            $count++;
+            $replacements[$original] = $count;
+          }
+          break;
+      }
+    }
+  }
+
+  return $replacements;
+}
+
+/**
+ * Return the number of children/generated newsletters for a given newsletter
+ * @param $eid newsletter ID
+ */
+function simplenews_scheduler_get_newsletter_count($pid) {
+  $count = db_query('SELECT COUNT(*) FROM {simplenews_scheduler_editions} WHERE pid = :pid', array(':pid' => $pid))->fetchField();
+  return $count;
+}
+
 /**
  * Check whether to display the Scheduled Newsletter tab.
  */
