# How to Sync GrowSurf Referral Data to EmailOctopus > Connect EmailOctopus to GrowSurf with an API key, pick a list, and sync 15 referral custom fields onto every contact. - URL: https://growsurf.com/integration-guides/emailoctopus-referral-contact-sync/ --- [← View All Guides](/integration-guides/) One API key, one list, and every contact carries their referral link as a custom field. Want the full setup walkthrough? Use these docs for exact setup steps, supported fields, and troubleshooting. [GrowSurf EmailOctopus setup guide](https://docs.growsurf.com/integrations/emailoctopus) [EmailOctopus guide to fields](https://help.emailoctopus.com/article/37-adding-new-fields) GrowSurf adds and updates contacts in the EmailOctopus list you choose and creates 15 custom fields holding each participant’s referral link, referral counts, referrer details, and milestone progress. EmailOctopus keeps custom fields and tags separate: fields store values you can print in a campaign, tags group people. GrowSurf writes fields, so every value is available to your email content. ## Integration Steps ### Get an EmailOctopus API key Copy your private API key from your [EmailOctopus API settings](https://emailoctopus.com/api-documentation). ### Connect EmailOctopus in GrowSurf Open **Program Editor > 4. Options > Integrations** and search for EmailOctopus. Searching for EmailOctopus in the GrowSurf Program Editor integrations listSearch the integrations list in Program Editor > 4. Options > Integrations. Expand the card, paste the API key, and submit. The EmailOctopus API key field in the GrowSurf Program EditorPaste the API key and submit. Connect before you import participants; the sync only covers people added or referred afterwards. If you have already imported, use the [existing-participant sync options](https://support.growsurf.com/article/385-how-can-i-sync-my-growsurf-participants-to-my-esp). ### Choose the list and save Pick the EmailOctopus list GrowSurf should keep current, then save changes. Contacts are added or updated there every time someone joins your program or gets referred. ### Know your field tags | GrowSurf data | Field tag | Type | What it holds | | --- | --- | --- | --- | | Share URL | GrowSurfShareURL | Text | The participant’s unique referral link | | Participant ID | GrowSurfParticipantID | Text | The participant’s GrowSurf ID | | Referral Status | GrowSurfReferralStatus | Text | CREDIT_PENDING, CREDIT_AWARDED, or CREDIT_EXPIRED | | Participant first name | GrowSurfParticipantFirstName | Text | The participant’s first name | | Participant last name | GrowSurfParticipantLastName | Text | The participant’s last name | | Referrer first name | GrowSurfReferrerFirstName | Text | The referrer’s first name, when there is one | | Referrer last name | GrowSurfReferrerLastName | Text | The referrer’s last name, when there is one | | Referrer email | GrowSurfReferrerEmail | Text | The referrer’s email, when there is one | | Total referral count | GrowSurfTotalReferralCount | Number | All-time referral count | | Monthly referral count | GrowSurfMonthlyReferralCount | Number | Referral count for the current month | | Previous monthly referral count | PrevMonthlyReferralCount | Number | Referral count for the previous month | | Next milestone | GrowSurfNextMilestone | Text | The next milestone message, on programs with milestone rewards | | Next monthly milestone | GrowSurfNextMonthlyMilestone | Text | The next monthly milestone message, when there is one | | Total invite count | GrowSurfTotalInviteCount | Number | All-time invite count | | Total impression count | GrowSurfTotalImpressionCount | Number | All-time referral-link view count | In campaign content, wrap the tag in double curly braces — the Share URL field tag `GrowSurfShareURL` is written as `{{GrowSurfShareURL}}`. ## Tips #### Fields, not tags EmailOctopus tags group contacts; only custom fields hold a printable value. GrowSurf uses fields, which is why the referral link is available in your campaign body. #### The tag name and the merge syntax differ The field tag is `GrowSurfShareURL`. In an email you write `{{GrowSurfShareURL}}`. Confusing the two is the usual cause of a blank link. #### Connect first, import second The sync does not backfill on its own. Recommended Guides [EmailOctopus logo How to Build Referral Campaigns in EmailOctopus with GrowSurf Merge tags put each contact’s own referral link into a single EmailOctopus campaign or automation. View Guide →](/integration-guides/emailoctopus-referral-email-campaigns/) [MailerLite logo How to Sync GrowSurf Referral Data to MailerLite Subscribers One API key, one Group, 15 referral fields — on MailerLite Classic, which is the part to check first. View Guide →](/integration-guides/mailerlite-referral-subscriber-sync/) [Campaign Monitor logo How to Sync GrowSurf Referral Data to Campaign Monitor Authorize once, choose a client and a list, and every subscriber carries their referral link as a custom field. View Guide →](/integration-guides/campaign-monitor-referral-subscriber-sync/) ## FAQ #### Does GrowSurf create the fields? Yes, once the integration is connected and a list is selected. #### What is the difference between an EmailOctopus tag and a field? Tags group contacts for targeting. Fields store values you can insert into campaign content. GrowSurf writes fields. #### How do I insert the referral link? `{{GrowSurfShareURL}}`. ## Turn word of mouth into steady growth from your customers Launch a refer-a-friend or affiliate program that lowers your acquisition costs and builds customer loyalty, with little engineering work. [Launch Your Program](https://app.growsurf.com/signup) 14-day free trial No credit card required Trusted by marketing and product teams that grow through customer, user, and partner referrals. ## Built for lean teams, scaled for category leaders Thanks. You're signed up. Something went wrong. Please try again.