Precisionary · Zapier rebuild and cutover

Change log

Every change made to Precisionary's lead Zaps and lead workbook for the rebuild, newest first. Scope: the 8 ticket sources and their 9 [REBUILD v2] Zaps. Maintained by iExcel. Last updated 28 Sep 2026, 4:07 AM ET. Status: complete. Everything was successful.

8 of 8sources live on the new workbook, each tested with a real form fill
Passedfinal production test of Request a Quote: pitch, Clay, catch (28 Sep, 2:29 AM)
8 of 8sources create a Streak box (Request a Quote's comes from the catch)
UnchangedClay still throws to legacy catch 348412853, now v6 with the rebuild steps
Backfill done3 leads from Sep 24–26 added; every source matches Gravity Forms and Unbounce

Running notes

Open questions, working knowledge and things to watch. Updated as the work moves; resolved items move into the log below.
28 Sep
5:32 PM
Done Partial-lead alert Zap built (381696774), switched off, in test mode. Every hour it reads Gravity Forms and picks up anyone who started a form and left without submitting (60+ minutes ago, and never came back to finish). It emails the same people the full form emails, creates a Streak box marked '(partial)', and logs the partial in a new tab, 'Partials Notified (auto)'. Test mode sends only to ads@iexcel.co. Waiting for a read-only Gravity Forms API key, which a person has to create and paste in.
28 Sep
5:15 PM
Done Protocol-lead column misalignment verified corrected; ticket closed. Acute Brain Slicing and PCLS now write to their own tabs, mapped one-to-one. In the old sheet, all 118 protocol-form rows from 2026 (Organoid, Electrophysiology, Acute Brain Slicing, PCLS Manual Offer, New PCLS Protocol) have email, time, date, channel and landing page in the right columns. Written confirmation to George drafted for Micah.
28 Sep
5:11 PM
Done Rebuild tickets closed in Asana. [REBUILD] New Zapier Spreadsheet (with its 10 subtasks) and [REBUILD] Zapier Zaps, then full QA are complete. The one unmet step, GCLID capture (the click-ID columns exist but arrive empty), moved to the open ticket QA and reconcile new Zapier spreadsheet fields.
28 Sep
4:48 AM
Done Everything was successful. All 8 lead sources are live on the new Zaps and the new workbook, each one tested with a real form fill; Request a Quote's pitch and catch through Clay passed a final production test; Streak is reconnected everywhere; the 3 leads that arrived before the switch were backfilled; no lead was lost; Clay was never touched. Honest note on the timeline: the work ran from 5:36 PM to about 5 AM, and the operator may have dozed off a couple of times along the way, which explains the longer gaps between some timestamps.
28 Sep
4:48 AM
Done 7-day lead watch automated in the cloud; it no longer depends on anyone's laptop. Every morning a Google Cloud cron (7:40 AM ET) copies Gravity Forms entries into a hidden tab, and a Claude cloud routine (8:07 AM ET) checks that every real lead from the website and the Unbounce pages landed in its tab, got a Streak box and, for Request a Quote, got its Clay fields. It posts to the Asana ticket only if something is wrong, posts a 7-day summary on Oct 5 and a reminder on Oct 28 that the old Zaps can be deleted. Test run from the cloud passed.
28 Sep
4:25 AM
Done Cutover closed: Asana ticket marked complete, wrap-up posted to the team. Final summary is on the Asana ticket and in the Slack thread in #internal_client_precisionary. Follow-ups: daily checks for 7 days, and the workbook sharing decision.
28 Sep
4:07 AM
Done Phase 5 backfill done: the 3 real leads that arrived before the cutover are now in the new workbook. Contact Us 82301 (Sep 24), Request a Quote 82302 (Sep 26, with its Clay results in AJ–AM) and one Microtome Search lead (Sep 24) written in the same format as their tabs; all three show in Master (auto). Re-checked every Gravity Forms entry since Sep 20 and all 4 Unbounce pages since Sep 15: nothing else real is missing. Not added by design: test and internal entries, and partial entries (the Zaps never carry partials). Only Phase 6 is left: daily checks for 7 days.
28 Sep
3:21 AM
Done All docs brought up to date: phases 1–4 done, Phase 5 backfill next. Status tiles now show the live state; 13 stale Open, Issue and Watch notes retagged Resolved; two lead email addresses removed from this public page (they belong only in the private state file); diagram and cutover plan marked with the outcome (Option A, tested).
28 Sep
2:33 AM
Done Final production test passed: Request a Quote pitch, Clay and catch, end to end. Real form on precisionary.com/request-a-quote at 2:29 AM (TEST lead, entry 82308). Pitch 377491593 ran all 6 steps (row in GF F4 RaQ with every field, then sent to Clay). Clay made exactly one row, enrichment and HTTP API both SUCCESS, no other rows re-ran. Catch 348412853 v6 ran all 9 steps at 2:31 AM: email to abby@, sales@, info@ and felipe.lino@; one Streak box (main pipeline); Title, Organization, LinkedIn and Confidence written to AJ–AM; row shows in Master (auto). Old pitch and old sheet untouched. Test Streak box and sheet row deleted.
28 Sep
2:22 AM
Resolved 4:07 AM Phase 5 backfill: gap measured. Checked every Gravity Forms entry since Sep 22 against the new tabs. Real completed leads missing: Contact Us 82301 (Sep 24, vendor pitch) and Request a Quote 82302 (Sep 26, real prospect). Unbounce: one Microtome Search lead (Sep 24). Everything else since Sep 22 is test or internal entries, or partials (82294, 82306), which the Zaps never carried. Full recovery state written to zapier/CUTOVER-STATE.md.
28 Sep
2:16 AM
Done Cutover 8 of 8 complete: Request a Quote pitch and catch tested end to end. Clay unchanged (its plan blocks editing the HTTP API column). Instead the legacy catch Zap 348412853, which Clay already throws to, was published as v6 with the rebuild steps (cut-off Entry ID > 82305, cleaned phone, Streak before the sheet, AJ–AM update in the new workbook). New pitch 377491593 on; old pitch 270724776 off. Test quote (entry 82307) at 2:13 AM: pitch wrote the row with both Comments boxes, Clay enriched it (row 348, HTTP API SUCCESS), catch ran at 2:14 AM and filled Title, Organization, LinkedIn and Confidence, and created the Streak box with Clay's phone cleaned correctly. Test Streak box and sheet row deleted; Clay row and Gravity Forms entry stay. Rollback: republish 348412853's previous version (backup copy 381584287) and switch 270724776 back on.
28 Sep
2:06 AM
Done Legacy catch Zap duplicated as a backup: 381584287. “[BACKUP 2026-09-28] [NEW SITE] Request a Quote -> Clay, Google Sheets, Streak” is an exact copy of 348412853's live version (same 6 steps; every step setting identical, checked field by field). Kept OFF. The legacy Zap itself is unchanged and still on, still receiving Clay's throw-back.
28 Sep
2:05 AM
Worked around 2:16 AM Clay's HTTP API column can't safely be edited on Precisionary's Clay plan. Opening the column editor shows “Upgrade to Growth to unlock this feature! HTTP API Integrations are only available on Growth plans or higher.” The existing column works today (last edited May 5), but saving an edit could be refused or disable it, which would break Request a Quote enrichment with no way back. Closed without saving; confirmed the column still posts to …/ueiqb04/. Clay-side repointing (and Option B) is off the table unless Precisionary upgrades. New catch Zap 377491598 is on but receives nothing. Worked around: Request a Quote uses the legacy catch, so Clay needed no change.
28 Sep
2:03 AM
Done Request a Quote cutover started: flood guard in place and proven. New catch Zap 377491598 now only continues when Entry ID > 82305 (all 347 Clay rows are 82302 or lower). Published and on. Proof: an old-ID test post to its hook shows as “filtered” in Zap history, so nothing reached email, Streak or the sheet. Rollback address saved: …/catch/5162678/ueiqb04/. Next: point Clay at …/4tej9le/.
28 Sep
1:22 AM
Done Diagram of the Request a Quote problem published. raq-clay-diagram shows the pitch and catch, the 347-row replay danger and Options A and B. Housekeeping: for about 5 minutes two helper scripts (change-log and test-row cleanup) were also published on this site; they contained no passwords or tokens, only file paths and the workbook ID, and were removed.
28 Sep
1:16 AM
Resolved 2:16 AM Request a Quote cutover: risk of replaying 347 old quote leads to sales. Clay's “Gravity Forms Enrichment” table (347 rows, highest Entry ID 82302) throws each quote back to Zapier. Any Clay change that makes its HTTP API column run again on existing rows (editing the address, or adding a second column while Auto-run is on) could re-send all 347 old leads: up to 347 emails to sales and 347 duplicate Streak boxes. Auto-run must stay on, since it is what sends new quotes. Two ways to connect Clay's reply, both keeping all fields (35 form fields written before Clay; 4 Clay fields plus Streak phone/organization from Clay's 21-field reply):
A (recommended): no Clay change. Publish the new catch steps as a new version of the existing catch Zap 348412853, which Clay already posts to. No replay possible; rollback is republishing the old version.
B: add a second HTTP API column in Clay posting to 377491598, created without running on existing rows, with an Entry ID > 82305 cut-off filter on 377491598 as the backstop.
Either way: swap the pitch Zaps seconds apart (270724776 off, 377491593 on), then one TEST quote through the full round trip. Nothing changed yet; waiting on the A/B decision. View the diagram. Resolved: Option A. Legacy catch 348412853 published as v6 with the rebuild steps; Clay untouched; no old quotes replayed.
28 Sep
1:14 AM
Fixed Request a Quote: LinkedIn column would have stayed blank. Clay sends the field as “Linked In_Profile_URL”; the new catch Zap (377491598) read “Linked In Profile URL”, a name from the Sep 13 simulated test. Column AL now reads Clay's real field name. Found by checking Clay's actual HTTP API body (21 fields). Old value recorded; draft still off.
28 Sep
12:56 AM
Done Vibratome email moved back to the Clay catch (decision by Micah). Email step removed from 377482586 and published as v2 (“email removed; Vibratome email comes from Clay catch 351497031”). Vibratome now runs as production did: the new Zap writes the sheet row and Streak box; the email goes out from 351497031 after Clay throws the lead back. Both Zaps confirmed on. Removed step kept in the 27 Sep backup for rollback.
28 Sep
12:31 AM
Resolved 12:56 AM Vibratome also goes to Clay, outside Zapier, and the rebuild now sends a duplicate email. The Unbounce page posts every lead straight to Clay's “Vibratome Search Enrichment” table; Clay posts back to Zap 351497031, which emails sales with the Clay data (ran OK on the 11:12 PM test). Production's Vibratome Zap had no email for that reason; the rebuild added one, so from 11:11 PM each Vibratome lead sent two emails. Resolved: email step removed (see next note up). Correction: 351497031 was earlier logged here as never run; that was wrong.
28 Sep
12:31 AM
Known Clay setup (Precisionary workspace 980314). “Gravity Forms Enrichment” table: fed by 377491593/270724776 webhook, 347 rows (345 Request a Quote), posts back to production hook …/ueiqb04/ (348412853). At cutover that URL changes to the new Zap's hook …/4tej9le/ (377491598). “Vibratome Search Enrichment”: fed by the Unbounce page, posts to …/u0dcxrv/ (351497031); unaffected by the cutover.
27 Sep
11:24 PM
Done Cutover 7 of 8 complete and tested: Contact Us. Only Request a Quote remains. New Zap 377491569 published (date step tested; email test skipped) and old 270713806 switched off through the API at 11:22 PM. Publish calls captured again (PATCH, then POST .../draft/publish-version returning 201). Test lead (Gravity Forms entry 82305): one run, all fields, date read correctly, one Streak box. Test box and sheet row deleted; TEST entry stays in Gravity Forms.
27 Sep
11:20 PM
Done Cutover 6 of 8 complete and tested: Talk to an Expert. New Zap 377491580 published (filter and date step tested; email test skipped) and old 270725812 switched off through the API at 11:18 PM. Test lead (Gravity Forms entry 82304, home page form): one run, all fields incl. application and "Please explain", date read correctly, one Streak box. Test box and sheet row deleted; TEST entry stays in Gravity Forms.
27 Sep
11:16 PM
Done Cutover 5 of 8 complete and tested: Connect Researchers. First time this form has ever reached a Zap. New Zap 377491583 published (filter and date step tested) and old 270729347, which never ran once, switched off through the API at 11:14 PM. Test lead (Gravity Forms entry 82303): the new Zap fired, row landed with all fields, date read correctly, one Streak box. Test box and sheet row deleted; the TEST entry stays in Gravity Forms.
27 Sep
11:13 PM
Done Cutover 4 of 8 complete and tested: Vibratome Search. New Zap 377482586 published (filter tested; email and Streak tests skipped so nothing was sent) and old 271902886 switched off through the API at 11:11 PM. Test lead: one run, all fields, date read correctly, one Streak box named by email as in production. Vibratome now also sends a notification email, which production never did. Test box and row deleted. All 4 Unbounce sources are now on the new Zaps.
27 Sep
11:09 PM
Done Cutover 3 of 8 complete and tested: PCLS Manual Offer. New Zap 377491600 published (filter tested; email test skipped so no mail went out) and old 247071532 switched off through the API at 11:08 PM. Test lead: one run, all fields, date read correctly by Master, Streak box in PCLS's own pipeline (stage 5001) as in production. Test box and row deleted.
27 Sep
10:37 PM
Done Live test on Acute Brain Slicing passed. Test lead submitted at 10:36 PM. Only the new Zap ran (old one confirmed off). Row landed with all fields; date stored as text and read correctly by Master, so the date fix works on live leads. One Streak box, right pipeline and stage. Test box and row deleted.
27 Sep
10:34 PM
Done Cutover 2 of 8 complete: Acute Brain Slicing. New Zap 377491614 published and on (filter tested, draft checked intact). Old Zap 290068034 switched off through the API in the same minute (off at 10:34:44 PM, confirmed on the server). Publish call captured for the API: POST .../draft/publish-version.
27 Sep
10:32 PM
Done Cutover 1 of 8 complete: old Microtome Zap (284229014) switched OFF. Confirmed on the server (off at 10:32 PM). New Zap 377491625 is on. Microtome leads now go only to the new tab, one email, one Streak box. The off switch was captured as an API call (POST .../zaps/{id}/disable) for the remaining 7 sources.
27 Sep
10:26 PM
Done Date fix on all 8 tabs: new leads no longer get a garbled date. The test showed Sheets converting the date Zapier writes into a number, which Master read as 46293.0990. The date column on all 8 tabs is now plain text, so it stays as written. Proven with a write test: stored as 2026-09-02 14:37:56 and read by Master as 2026-09-02, 14:37. Test copy deleted. Formatting only; no data or formulas changed.
27 Sep
10:22 PM
Done Live test on Microtome Search: new Zap matches the old one. Test lead (TEST iExcel Zap QA) submitted on the Microtome page. Both Zaps ran successfully. New sheet row and old sheet row carry the same values; the two Streak boxes are identical (Website Leads Triage, stage 5001, same 9 fields); Master picked it up and auto-labelled it test. Both test boxes and both test rows then deleted.
27 Sep
10:02 PM
Done Cutover 1 of 8: Microtome Search (377491625) published and ON. Filter test passed in the editor, draft re-checked intact (7 steps incl. Streak, sheet as Clark), then published as v1.
27 Sep
10:03 PM
Resolved 10:32 PM Old Microtome Zap (284229014) was still ON. Switching it off was blocked by the assistant's permission settings, so both Microtome Zaps are running: a Microtome lead in this window gets two emails and two Streak boxes. Needs a person to switch 284229014 off, or permission for the assistant to do it. Cutover paused until then.
27 Sep
10:00 PM
Done Contact Us, Talk to an Expert, Connect Researchers: email shows date and time again. The "Entry Date/Time" line now uses the Eastern date and time steps (was date only). Time steps checked on each Zap's sample lead. Previous email text saved as the rollback copy. Emails were not test-sent, to avoid sending to sales. Drafts still off. All 3 parity issues from 9:31 PM are now fixed.
27 Sep
9:57 PM
Done Request a Quote (377491593): time restored in what goes to Clay. "Time" now sends the Eastern time (was an empty ":") and "Email Entry Date/Time" sends date and time (was date only), so the quote email shows both again. Checked on the sample lead: 19:13 UTC comes out as 09/11/2026 15:13. The Clay step itself was not fired, since that would create a real Clay record. Backed up first (fingerprint matched). Draft still off.
27 Sep
9:55 PM
Done Serious issue fixed: Request a Quote Streak box no longer depends on the sheet. 377491598 reordered to: hook > filter > name split > email > phone clean-up > Streak > sheet lookup > sheet update. A missed lookup can now only skip the Clay columns in the sheet, never the Streak box or the email. Backed up first (fingerprint matched). Draft still off.
27 Sep
9:38 PM
Resolved 9:55 PM Request a Quote could silently skip the Streak box. Solution identified; fixing now. In 377491598 the Streak step runs after the sheet lookup. If the lookup ever finds no matching Entry ID, the Zap stops and that quote request never gets a Streak box, with no alert. Production never depended on the sheet for Streak. Solution: move the phone clean-up and Streak ahead of the lookup so the sheet update runs last. Found before cutover; nothing live was affected. The two email time-stamp differences are minor and are being fixed in the same pass.
27 Sep
9:31 PM
Resolved 10:00 PM Parity check vs production: 3 things work differently. (1) 377491598 runs Streak after the sheet lookup, so if the lookup finds no row the Zap stops and no Streak box is made; production never depended on the sheet. (2) 377491593 sends Clay an empty “Time” and a date-only “Email Entry Date/Time”, so the quote email loses the time. (3) Contact Us, Talk to an Expert and Connect Researchers emails show the date only; production showed Eastern date and time. Not yet fixed. Resolved: all three fixed (9:55, 9:57 and 10:00 PM notes).
27 Sep
9:18 PM
Resolved 9:57 PM What 377491593 sends to Clay. Two carry-overs, not changed: only the first Comments box goes to Clay (so the second never reaches the notification email), and the “Time” and “Email Entry Date/Time” fields read the date step, so the email shows a date with no time. Both are small mapping fixes; say if you want them done before cutover. Resolved: second Comments box fixed 9:17 PM, time fixed 9:57 PM.
27 Sep
9:17 PM
Done Request a Quote (377491593): second Comments box fixed. Form 4 has two fields both labelled Comments. Column AC was mapped to the same Zapier field as AA, so the second box (used on 471 of 1,110 rows) would have been lost. AC now maps to Zapier's "Comments - 1" and its header is renamed to match. Backed up first; Master formula reads by column letter, so nothing downstream moves. Draft still off.
27 Sep
9:15 PM
Done Sheet cleanup checked: no Sep 13 test rows left. No duplicate Entry IDs in any Gravity Forms tab and the quote tab's Clay columns are empty, so the Sep 13 test writes were already cleared when the tabs were rebuilt with history. Rows marked TEST are real historical test submissions (e.g. form checks by Jonathan Manning); the classifier already labels them, so they stay.
27 Sep
9:12 PM
Done Notification recipients kept as production. No change: Contact Us, Talk to an Expert, Connect Researchers to abby@, sales@, info@; Request a Quote adds felipe.lino@; the 4 Unbounce pages to sales@ and abby@. Say if any list should change.
27 Sep
9:05 PM
Closed Browser connection dropped mid-save. The Chrome extension that runs the Zapier calls went offline during the 377491598 save. On reconnect the draft was re-read: the save had landed complete (9 steps, phone steps wired, Streak Phone pointing at the cleaned value), draft still off, production unchanged. Earlier, two calls also ran past the browser tool's 45-second limit; both finished in the page and were verified the same way. Every change is re-read after saving, so a dropout cannot leave an unverified change.
27 Sep
9:05 PM
Done Request a Quote (377491598): Clay phone cleaned before Streak. Two free Formatter steps added before Streak: cut everything from "Not Found" onward, then extract a phone number. Tested: real US and international numbers pass through; "Not Found…" text and #ERROR! come out blank. Streak's Phone now uses the cleaned value; the email still shows Clay's raw phone. Backed up first. Draft still off; production unchanged.
27 Sep
8:24 PM
Done All 9 drafts now write to the sheet as Clark (clark.harris@precisionary.com). 10 Sheets steps switched from ads@iexcel.co. Write-tested on all 8 tabs as Clark; the 8 test rows were deleted and each tab is back to its prior row count, original leads intact. The Request a Quote lookup step gets its real test in the Clay round trip. Drafts still off; production unchanged.
27 Sep
8:16 PM
Open Workbook sharing. Clark has edit access via the shared drive, and the workbook is also set to “anyone with the link can edit.” Since it contains lead names and emails, decide whether to lock that down. Left unchanged for now; proceeding to switch the Sheets steps on all 9 drafts from ads@iexcel.co to Clark's connection.
27 Sep
8:11 PM
Done Request a Quote return Zap (377491598): Streak step added. All 8 done. Backed up, added, tested, test box deleted, real mapping restored. Phone and organization come from Clay, same as production. Draft still off; production unchanged. 377491593 needs no Streak step.
27 Sep
8:08 PM
Done Microtome Search (377491625): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Draft still off; production unchanged. Its email subject also says "Compresstome Landing Page" (carried over); not changed.
27 Sep
8:06 PM
Done Acute Brain Slicing (377491614): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Draft still off; production unchanged. Separately, its notification email subject says "Compresstome Landing Page" (carried over from before); not changed.
27 Sep
8:04 PM
Done PCLS Manual Offer (377491600): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Goes to the second Streak pipeline, stage 5001, same as production. Draft still off; production unchanged.
27 Sep
8:01 PM
Done Vibratome (377482586): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Same mapping as production; this page sends no first/last name or phone, so the box is named by email as before. Draft still off; production unchanged.
27 Sep
7:59 PM
Done Connect Researchers (377491583): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Draft still off; production unchanged.
27 Sep
7:56 PM
Done Talk to an Expert (377491580): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Draft still off; production unchanged.
27 Sep
7:47 PM
Done Contact Us (377491569): Streak step added. Backed up, added, tested, test box deleted, real mapping restored. Draft still off; production unchanged.
27 Sep
Resolved Streak test. Test each new Streak step with a labelled test box in the live pipeline and delete it after, or skip the test and check Streak on the first real test lead at cutover. Decided: labelled test box, deleted after. Done on every cutover test.
27 Sep
Resolved 8:24 PM Google account for the sheet writes. Drafts write as ads@iexcel.co. Clark's precisionary.com connection is healthy again (refreshed 14 Sep) and would keep the pipeline on a client-owned login. Needs edit access to the new workbook. All Sheets steps now use Clark’s connection.
27 Sep
Resolved 9:05 PM Clay phone text. When Clay finds no phone it writes a sentence (“Not Found — …”) into the phone field. Decide whether that goes into Streak. The text is stripped; only a real phone number reaches Streak.
27 Sep
Resolved 9:12 PM Notification recipients. Confirm who gets each form's email. Production Request a Quote sends to abby, sales, info and felipe.lino. Kept the same as production.
27 Sep
Superseded Clay switch order (original plan, replaced by the Request a Quote options note above). Clay posts back to production Zap 348412853 today. At cutover: turn on 377491598, paste its hook URL into Clay, turn off 270724776, turn on 377491593, then turn off 348412853. Never run 377491593 and 270724776 together or every quote goes to Clay twice.
27 Sep
Resolved 4:07 AM Backfill gap. New workbook is behind the old sheet from 22 Sep. Copy the gap into each tab at that source's switch time. Measured at 2:22 AM; that note has the list.
27 Sep
Known Editor tabs overwrite API edits. An open Zap editor saves its old copy over any change made through the API. Close editor tabs before each change and re-read the Zap after.
27 Sep
Known Publishing and switching on are manual for now. Those two actions have not been captured as API calls yet. The first time they are done in the editor, the network calls get recorded so the rest can run through the API.
27 Sep
Known Out of scope. 10 other Zaps also write to the old sheet (Organoid, Electrophysiology, PCLS Liver, Compresstome, Cryo, Tumor Slicing, Rotary Microtome, Tissue Embedding, Pure Chat, Calendar demo invite). They stay as they are.
Built Changed Verified Decision Pending Issue
27 Sep 2026Sunday
Decision

Cutover work started, 5:36 PM ET

Runbooks complete. Live changes to the 9 [REBUILD v2] Zaps start from this point. Tracked in Asana: “[CUTOVER] Zapier rebuild: runbooks done, live changes start now” (Precisionary - Zapier Management, section 10. Acceptance Testing & Cutover). Estimated time: 3.5 hours. Team notified in Slack #internal_client_precisionary.

Done 8:11 PM

Add the Streak step back to the 9 drafts

Next change. Each draft gets the Streak step from its production Zap (same connection, pipeline and stage), remapped to its own fields. Request a Quote's step goes in 377491598, since phone and organization only exist after Clay. A backup of every draft is saved before editing. Waiting on one call: test in the live Streak pipeline with a labelled test box that is then deleted, or skip the test until cutover.

Decision

Scope set to the 8 ticket sources

The cutover covers the 8 sources on the Asana ticket and their 9 [REBUILD v2] Zaps. The other 10 Zaps that write to the old sheet keep running there, untouched.

Verified

Live check of the Zapier account

  • 71 Zaps in account 5163859. All 9 [REBUILD v2] Zaps present, switched off, never published.
  • All 9 production Zaps for the 8 sources are on. The 8 that write a sheet still write to the old Tracking Sheet; 270724776 only posts to Clay.
  • New workbook: Request a Quote rows through 22 Sep. The old sheet has leads through 26 Sep that the new one does not, so a catch-up backfill is needed at cutover.
  • Google connections: clark.harris@precisionary.com shows refreshed 14 Sep and healthy; ads@iexcel.co (used by the drafts) healthy.

No Zap, sheet or Streak change was made on this date.

22 Sep 2026Monday
Changed

Manual catch-up of the new workbook

  • Gravity Forms: +16 Request a Quote, +3 Talk to an Expert, +1 Contact Us, pulled from the Gravity Forms API.
  • Unbounce: +5 leads across PCLS Manual Offer, Organoid and SFN pages, pulled from the Unbounce API through Zapier.
  • Master (auto) at 2,360 rows afterwards; dashboard recalculated from it.

Needed because the new Zaps are drafts and write nothing yet.

13 Sep 2026Saturday
Built

New lead workbook

“Precisionary - Form Submissions (NEW)” in the shared drive, one tab per source. Headers match each form's own fields. Master (auto) stacks every tab; Overrides and Review Queue handle human classification; Dashboard and Monthly Dashboard read from it. 1,558 historical classifications carried over from the old Tracking Sheet.

Changed

All 9 drafts repointed to the new workbook

DraftSourceWrites to tab
377491569GF F1 Contact UsGF F1 Contact Us (37 cols)
377491593GF F4 Request a Quote, out to ClayGF F4 RaQ (35 cols)
377491598GF F4 Request a Quote, back from ClayGF F4 RaQ, AJ–AM (Title, Organization, LinkedIn, Confidence)
377491580GF F5 Talk to an ExpertGF F5 Talk To An Expert (37 cols)
377491583GF F7 Connect ResearchersGF F7 Connect Researchers (33 cols)
377482586UB Vibratome SearchUB Vibratome Search (13 cols)
377491600UB PCLS Manual OfferUB PCLS Manual Offer (16 cols)
377491614UB Acute Brain SlicingUB Acute Brain Slicing (15 cols)
377491625UB Microtome SearchUB Microtome Search (17 cols)

Every trigger field mapped in order. Each Sheets step tested once and wrote a correct row.

Changed

Request a Quote split into write, then enrich

377491593 now writes the full 35-column row before posting to Clay. 377491598 no longer adds a row; it looks up the row by Entry ID and fills Clay's enrichment into AJ–AM. Tested with a simulated Clay post-back; Clay itself was not called.

Changed

Streak step removed from all 9 drafts

Removed while the sheet mapping was rebuilt. To be added back before cutover (see 27 Sep, Pending).

Issue

Dead Google connection replaced

Google Sheets connection 61069997 returned “reconnect your account”. All 9 drafts switched to connection 66212008 (ads@iexcel.co).

24 Aug 2026Monday
Verified

Audit of the 10 ticket subtasks

Every subtask traced to its Zap. Request a Quote is one pipeline in two Zaps through Clay. Both “?” subtasks are dead legacy Zaps with 0 runs. Findings: PCLS wrote two columns off, Vibratome never mapped Name and had no email step, Clay enrichment never reached the sheet, Connect Researchers had never run.

Built

9 [REBUILD v2] Zaps created as drafts

  • Email filter added as step 2 on every Zap (free step).
  • update_row step removed; its month column moves to a sheet formula (one fewer billable task per lead).
  • Vibratome: Name mapped, email notification added.
  • PCLS: two-column shift corrected.
  • Gravity Forms Zaps: five chained formatter steps reduced to two date steps.

All created switched off and unpublished. Production Zaps re-read afterwards and confirmed unchanged.